From badbb87d0fbed8410f1fb7cfd6fb794d9ef3675b Mon Sep 17 00:00:00 2001 From: Harish Yerra Date: Sun, 28 May 2023 23:05:24 -0400 Subject: [PATCH 001/148] Add support for Unity MLAgents environments. --- torchrl/envs/libs/unity.py | 369 +++++++++++++++++++++++++++++++++++++ 1 file changed, 369 insertions(+) create mode 100644 torchrl/envs/libs/unity.py diff --git a/torchrl/envs/libs/unity.py b/torchrl/envs/libs/unity.py new file mode 100644 index 00000000000..1f419db3242 --- /dev/null +++ b/torchrl/envs/libs/unity.py @@ -0,0 +1,369 @@ +from warnings import warn + +import numpy as np +import torch +from tensordict.tensordict import TensorDict, TensorDictBase +from torchrl.data.tensor_specs import ( + BoundedTensorSpec, + CompositeSpec, + DiscreteTensorSpec, + MultiDiscreteTensorSpec, + UnboundedContinuousTensorSpec, + UnboundedDiscreteTensorSpec, +) +from torchrl.data.utils import numpy_to_torch_dtype_dict +from torchrl.envs.common import _EnvWrapper +from torchrl.envs.utils import _classproperty + +IMPORT_ERR = None +try: + from mlagents_envs.base_env import ActionSpec, ActionTuple, BaseEnv, ObservationSpec + from mlagents_envs.environment import SideChannel, UnityEnvironment + + _has_mlagents = True +except ImportError as err: + _has_mlagents = False + IMPORT_ERR = err + + +__all__ = ["UnityWrapper", "UnityEnv"] + + +def _unity_to_torchrl_spec_transform(spec, dtype=None, device="cpu"): + """Maps the Unity specs to the TorchRL specs.""" + if isinstance(spec, ObservationSpec): + shape = spec.shape + if not len(shape): + shape = torch.Size([1]) + dtype = numpy_to_torch_dtype_dict[dtype] + return UnboundedContinuousTensorSpec(shape, device=device, dtype=dtype) + elif isinstance(spec, ActionSpec): + if spec.continuous_size == len(spec.discrete_branches) == 0: + raise ValueError("No available actions") + action_mask_spec = None + d_spec = c_spec = None + if spec.discrete_size == 1: + d_spec = DiscreteTensorSpec( + spec.discrete_branches[0], shape=[spec.discrete_size], device=device + ) + else: + d_spec = MultiDiscreteTensorSpec( + spec.discrete_branches, shape=[spec.discrete_size], device=device + ) + # FIXME: Need tuple support as action masks are 2D arrays + # action_mask_spec = MultiDiscreteTensorSpec(spec.discrete_branches, dtype=torch.bool, device=device) + + if spec.continuous_size > 0: + dtype = numpy_to_torch_dtype_dict[dtype] + c_spec = BoundedTensorSpec( + -1, 1, (spec.continuous_size,), dtype=dtype, device=device + ) + + if d_spec and c_spec: + return CompositeSpec(discrete=d_spec, continuous=c_spec), action_mask_spec + else: + return d_spec if d_spec else c_spec, action_mask_spec + else: + raise TypeError(f"Unknown spec of type {type(spec)} passed") + + +class UnityWrapper(_EnvWrapper): + """Unity environment wrapper. + + Examples: + >>> env = UnityWrapper( + ... UnityEnvironment( + ... "<>", + ... side_channels=[], + ... additional_args=[], + ... log_folder=<>, + ... device=device, + ... ) + ... ) + """ + + git_url = "https://github.com/Unity-Technologies/ml-agents" + libname = "mlagents_envs" + + def __init__(self, env=None, **kwargs): + if env is not None: + kwargs["env"] = env + super().__init__(**kwargs) + + def _init_env(self): + self._behavior_names = [] + + def _set_seed(self, seed: int | None): + warn( + "Seeding through _set_seed has not been implemented. Please set the " + "seed when you create the environment." + ) + + @_classproperty + def available_envs(cls) -> list[str]: + raise NotImplementedError("You must provide your own environments") + + def _build_env(self, env: BaseEnv): + if not env.behavior_specs: + # Take a single step so that the brain information will be sent over + env.step() + return env + + def _make_specs(self, env: BaseEnv) -> None: + # TODO: Behavior specs are immutable but new ones + # can be added if they are created in the environment. + # Need to account for behavior specs that are added + # throughout the environment lifecycle. + + # IMPORTANT: This assumes that all agents have the same + # observations and actions. To change this, we need + # some method to allow for different specs depending on + # agent. + # + # A different `Parallel` version of this environment could be + # made where the number of agents is fixed, and then you stack + # all of the observations together. This design would allow + # different observations and actions, but would require + # a fixed agent count. The difficulty with implementing a + # `Parallel` version though is that not all agents will request + # a decision, so the spec would have to change depending + # on which agents request a decision. + + first_behavior_name = next(iter(env.behavior_specs.keys())) + behavior_unity_spec = env.behavior_specs[first_behavior_name] + observation_specs = [ + _unity_to_torchrl_spec_transform( + spec, dtype=np.dtype("float32"), device=self.device + ) + for spec in behavior_unity_spec.observation_specs + ] + behavior_id_spec = UnboundedDiscreteTensorSpec(1, device=self.device) + agent_id_spec = UnboundedDiscreteTensorSpec(1, device=self.device) + # FIXME: Need Tuple support here so we can support observations of varying dimensions. + # Thus, for now we use only the first observation. + self.observation_spec = CompositeSpec( + observation=observation_specs[0], + behavior_id=behavior_id_spec, + agent_id=agent_id_spec, + ) + self.action_spec, self.action_mask_spec = _unity_to_torchrl_spec_transform( + behavior_unity_spec.action_spec, dtype=np.int32, device=self.device + ) + self.reward_spec = UnboundedContinuousTensorSpec(shape=[1], device=self.device) + self.done_spec = DiscreteTensorSpec( + n=2, shape=[1], dtype=torch.bool, device=self.device + ) + + def __repr__(self) -> str: + return ( + f"{self.__class__.__name__}(env={self._env}, batch_size={self.batch_size})" + ) + + def _check_kwargs(self, kwargs: dict): + if "env" not in kwargs: + raise TypeError("Could not find environment key 'env' in kwargs.") + env = kwargs["env"] + if not isinstance(env, BaseEnv): + raise TypeError("env is not of type 'mlagents_envs.base_env.BaseEnv'.") + if "frame_skip" in kwargs and kwargs["frame_skip"] != 1: + # This functionality is difficult to support because not all agents will request + # decisions at each timestep and different agents might request decisions at + # different timesteps. This makes it difficult to do things like keep track + # of rewards. + raise ValueError( + "Currently, frame_skip is not supported for Unity environments." + ) + + def behavior_id_to_name(self, behavior_id: int): + raise self._behavior_names[behavior_id] + + def read_reward(self, reward): + return self.reward_spec.encode(reward, ignore_device=True) + + def read_obs(self, obs: np.ndarray, behavior_name: str, agent_id: int): + behavior_id = self._behavior_names.index(behavior_name) + observations = self.observation_spec.encode( + {"observation": obs, "behavior_id": behavior_id, "agent_id": agent_id}, + ignore_device=True, + ) + return observations + + def read_action(self, action): + action = self.action_spec.to_numpy(action, safe=False) + # We expand the dimensions at the 0 axis because actions are + # defined to be 2D arrays with an extra first dimension being + # used for the number of agents in the game. + if action.ndim == 0: + action = np.expand_dims(action, axis=0) + if isinstance(self.action_spec, CompositeSpec): + action = self.action_spec.to_numpy(action, safe=False) + continuous_action = np.expand_dims(action["continuous"], axis=0) + discrete_action = np.expand_dims(action["discrete"], axis=0) + action = ActionTuple(continuous_action, discrete_action) + elif isinstance(self.action_spec, DiscreteTensorSpec | MultiDiscreteTensorSpec): + action = np.expand_dims(action, axis=0) + action = ActionTuple(None, action) + else: + action = self.action_spec.to_numpy(action) + action = np.expand_dims(action, axis=0) + action = ActionTuple(action, None) + return action + + def read_action_mask(self, action_mask): + # if not self.action_mask_spec: + # return None + # return self.action_mask_spec.encode(action_mask) + return None + + def read_done(self, done): + return self.done_spec.encode(done) + + def _behavior_name_update(self): + self._live_behavior_names = list(self.behavior_specs.keys()) + for k in self._live_behavior_names: + if k not in self._behavior_names: + # We only add to self._behavior_names if the + # behavior name doesn't exist. This helps us + # ensure that the index of old behaviors stays + # the same and that we don't have duplicate entries. + # This is important since we use the index of the behavior + # name as an id for that behavior. + self._behavior_names.append(k) + + def _batch_update(self, behavior_name): + self._current_step_idx = 0 + self._current_behavior_name = behavior_name + self._decision_steps, self._terminal_steps = self.get_steps(behavior_name) + + def _get_next_tensordict(self): + num_steps = len(self._decision_steps) + len(self._terminal_steps) + if self._current_step_idx >= num_steps: + raise ValueError("All agents already have actions") + done = False if self._current_step_idx < len(self._decision_steps) else True + steps = self._decision_steps if not done else self._terminal_steps + agent_id = steps.agent_id[self._current_step_idx] + step = steps[agent_id] + # FIXME: Need Tuple support here so we can support observations of varying dimensions. + # Thus, for now we use only the first observation. + obs, reward = step.obs[0], step.reward + tensordict_out = TensorDict( + source=self.read_obs( + obs, behavior_name=self._current_behavior_name, agent_id=agent_id + ), + batch_size=self.batch_size, + device=self.device, + ) + # tensordict_out.set("action_mask", self.read_action_mask(action_mask)) + tensordict_out.set("reward", self.read_reward(reward)) + tensordict_out.set("done", self.read_done(done)) + return tensordict_out + + def _step(self, tensordict: TensorDictBase) -> TensorDictBase: + # We step through each agent one at a time, and only perform + # an environment step (send the actions to the environment) + # once all agents are processed. This is because Unity requires + # all agents to have actions before stepping or else the zero + # action will be sent. + # + # In order to step through each agent, we first iterate through + # all behaviors, and determine actions for each agent in that behavior + # and then repeat the loop until all behavior's and their + # agents are accounted for. We then perform an environment step. + action = tensordict.get("action") + unity_action = self.read_action(action) + self.set_action_for_agent( + self._current_behavior_name, tensordict.get("agent_id").item(), unity_action + ) + self._current_step_idx += 1 + try: + tensordict_out = self._get_next_tensordict() + return tensordict_out.select().set("next", tensordict_out) + except ValueError: + behavior_id = self._live_behavior_names.index(self._current_behavior_name) + # If we have more behaviors to go through, keep continuing. Otherwise step the environment and + # then continue again. + if behavior_id < len(self._live_behavior_names) - 1: + self._current_behavior_name = self._live_behavior_names[behavior_id + 1] + self._batch_update(self._current_behavior_name) + tensordict_out = self._get_next_tensordict() + return tensordict_out.select().set("next", tensordict_out) + else: + self._env.step() + self._behavior_name_update() + self._batch_update(self._live_behavior_names[0]) + tensordict_out = self._get_next_tensordict() + return tensordict_out.select().set("next", tensordict_out) + + def _reset(self, tensordict: TensorDictBase | None = None, **kwargs): + self._env.reset(**kwargs) + self._behavior_name_update() + self._batch_update(self._live_behavior_names[0]) + return self._get_next_tensordict() + + +class UnityEnv(UnityWrapper): + """Unity environment wrapper. + + Examples: + >>> env = UnityEnv( + ... "<>", + ... side_channels=[], + ... additional_args=[], + ... log_folder=<>, + ... device=device, + ... ) + """ + + def __init__( + self, + file_name: str | None = None, + seed: int = 0, + no_graphics: bool = False, + timeout_wait: int = 60, + side_channels: list[SideChannel] | None = None, + log_folder: str | None = None, + **kwargs, + ): + kwargs["file_name"] = file_name + kwargs["seed"] = seed + kwargs["no_graphics"] = no_graphics + kwargs["timeout_wait"] = timeout_wait + kwargs["side_channels"] = side_channels + kwargs["log_folder"] = log_folder + super().__init__(**kwargs) + + def _check_kwargs(self, kwargs: dict): + if "file_name" not in kwargs: + raise TypeError("Could not find environment key 'file_name' in kwargs.") + + def _build_env( + self, + file_name: str | None = None, + seed: int = 0, + no_graphics: bool = False, + timeout_wait: int = 60, + side_channels: list[SideChannel] | None = None, + log_folder: str | None = None, + **env_kwargs, + ): + if not _has_mlagents: + raise RuntimeError( + f"Unity MLAgents not found, unable to create environment. " + f"Consider downloading and installing Unity MLAgents from" + f" {self.git_url}" + ) + self.file_name = file_name + return super()._build_env( + UnityEnvironment( + file_name, + seed=seed, + no_graphics=no_graphics, + timeout_wait=timeout_wait, + side_channels=side_channels, + log_folder=log_folder, + **env_kwargs, + ) + ) + + def __repr__(self): + return f"{super().__repr__()}(file_name={self.file_name})" From 092e26c46d20bd0b90a704d9c2c3e4cc9ad21215 Mon Sep 17 00:00:00 2001 From: Harish Yerra Date: Sat, 24 Jun 2023 13:59:25 -0400 Subject: [PATCH 002/148] Make Unity Environment support heterogeneous observations and multiple agents. --- torchrl/envs/libs/unity.py | 274 ++++++++++++++++++++----------------- 1 file changed, 149 insertions(+), 125 deletions(-) diff --git a/torchrl/envs/libs/unity.py b/torchrl/envs/libs/unity.py index 1f419db3242..b27db619a69 100644 --- a/torchrl/envs/libs/unity.py +++ b/torchrl/envs/libs/unity.py @@ -36,7 +36,7 @@ def _unity_to_torchrl_spec_transform(spec, dtype=None, device="cpu"): if not len(shape): shape = torch.Size([1]) dtype = numpy_to_torch_dtype_dict[dtype] - return UnboundedContinuousTensorSpec(shape, device=device, dtype=dtype) + return UnboundedContinuousTensorSpec(shape=shape, device=device, dtype=dtype) elif isinstance(spec, ActionSpec): if spec.continuous_size == len(spec.discrete_branches) == 0: raise ValueError("No available actions") @@ -51,7 +51,7 @@ def _unity_to_torchrl_spec_transform(spec, dtype=None, device="cpu"): spec.discrete_branches, shape=[spec.discrete_size], device=device ) # FIXME: Need tuple support as action masks are 2D arrays - # action_mask_spec = MultiDiscreteTensorSpec(spec.discrete_branches, dtype=torch.bool, device=device) + # noqa: E501 action_mask_spec = MultiDiscreteTensorSpec(spec.discrete_branches, dtype=torch.bool, device=device) if spec.continuous_size > 0: dtype = numpy_to_torch_dtype_dict[dtype] @@ -91,7 +91,14 @@ def __init__(self, env=None, **kwargs): super().__init__(**kwargs) def _init_env(self): - self._behavior_names = [] + pass + + def _compute_num_agents(self, env): + num_agents = 0 + for behavior_name in env.behavior_specs.keys(): + decision_steps, terminal_steps = env.get_steps(behavior_name) + num_agents += len(decision_steps) + len(terminal_steps) + return num_agents def _set_seed(self, seed: int | None): warn( @@ -107,52 +114,75 @@ def _build_env(self, env: BaseEnv): if not env.behavior_specs: # Take a single step so that the brain information will be sent over env.step() + self._behavior_names = list(env.behavior_specs.keys()) + self.num_agents = self._compute_num_agents(env) + self._agent_id_to_behavior = {} return env def _make_specs(self, env: BaseEnv) -> None: - # TODO: Behavior specs are immutable but new ones - # can be added if they are created in the environment. - # Need to account for behavior specs that are added - # throughout the environment lifecycle. - - # IMPORTANT: This assumes that all agents have the same - # observations and actions. To change this, we need - # some method to allow for different specs depending on - # agent. - # - # A different `Parallel` version of this environment could be - # made where the number of agents is fixed, and then you stack - # all of the observations together. This design would allow - # different observations and actions, but would require - # a fixed agent count. The difficulty with implementing a - # `Parallel` version though is that not all agents will request - # a decision, so the spec would have to change depending - # on which agents request a decision. - - first_behavior_name = next(iter(env.behavior_specs.keys())) - behavior_unity_spec = env.behavior_specs[first_behavior_name] - observation_specs = [ - _unity_to_torchrl_spec_transform( - spec, dtype=np.dtype("float32"), device=self.device - ) - for spec in behavior_unity_spec.observation_specs - ] - behavior_id_spec = UnboundedDiscreteTensorSpec(1, device=self.device) - agent_id_spec = UnboundedDiscreteTensorSpec(1, device=self.device) - # FIXME: Need Tuple support here so we can support observations of varying dimensions. - # Thus, for now we use only the first observation. + observation_specs = [None] * self.num_agents + behavior_id_specs = [None] * self.num_agents + agent_id_specs = [None] * self.num_agents + action_specs = [None] * self.num_agents + action_mask_specs = [None] * self.num_agents + reward_specs = [None] * self.num_agents + done_specs = [None] * self.num_agents + valid_mask_specs = [None] * self.num_agents + + for behavior_name, behavior_unity_spec in env.behavior_specs.items(): + decision_steps, terminal_steps = env.get_steps(behavior_name) + for steps in [decision_steps, terminal_steps]: + for agent_id in steps.agent_id: + self._agent_id_to_behavior[agent_id] = behavior_name + + agent_observation_specs = [ + _unity_to_torchrl_spec_transform( + spec, dtype=np.dtype("float32"), device=self.device + ) + for spec in behavior_unity_spec.observation_specs + ] + agent_observation_spec = torch.stack(agent_observation_specs, dim=0) + observation_specs[agent_id] = agent_observation_spec + + behavior_id_specs[agent_id] = UnboundedDiscreteTensorSpec( + shape=1, device=self.device, dtype=torch.int8 + ) + agent_id_specs[agent_id] = UnboundedDiscreteTensorSpec( + shape=1, device=self.device, dtype=torch.int8 + ) + + ( + agent_action_spec, + agent_action_mask_spec, + ) = _unity_to_torchrl_spec_transform( + behavior_unity_spec.action_spec, + dtype=np.int32, + device=self.device, + ) + action_specs[agent_id] = agent_action_spec + action_mask_specs[agent_id] = agent_action_mask_spec + + reward_specs[agent_id] = UnboundedContinuousTensorSpec( + shape=[1], device=self.device + ) + done_specs[agent_id] = DiscreteTensorSpec( + n=2, shape=[1], dtype=torch.bool, device=self.device + ) + valid_mask_specs[agent_id] = DiscreteTensorSpec( + n=2, shape=[1], dtype=torch.bool, device=self.device + ) + self.observation_spec = CompositeSpec( - observation=observation_specs[0], - behavior_id=behavior_id_spec, - agent_id=agent_id_spec, - ) - self.action_spec, self.action_mask_spec = _unity_to_torchrl_spec_transform( - behavior_unity_spec.action_spec, dtype=np.int32, device=self.device - ) - self.reward_spec = UnboundedContinuousTensorSpec(shape=[1], device=self.device) - self.done_spec = DiscreteTensorSpec( - n=2, shape=[1], dtype=torch.bool, device=self.device + observation=torch.stack(observation_specs, dim=0) ) + self.behavior_id_spec = torch.stack(behavior_id_specs, dim=0) + self.agent_id_spec = torch.stack(agent_id_specs, dim=0) + self.action_spec = torch.stack(action_specs, dim=0) + # FIXME: Support action masks + # self.action_mask_spec = torch.stack(action_mask_specs, dim=0) + self.reward_spec = torch.stack(reward_specs, dim=0) + self.done_spec = torch.stack(done_specs, dim=0) + self.valid_mask_spec = torch.stack(valid_mask_specs, dim=0) def __repr__(self) -> str: return ( @@ -166,27 +196,34 @@ def _check_kwargs(self, kwargs: dict): if not isinstance(env, BaseEnv): raise TypeError("env is not of type 'mlagents_envs.base_env.BaseEnv'.") if "frame_skip" in kwargs and kwargs["frame_skip"] != 1: - # This functionality is difficult to support because not all agents will request - # decisions at each timestep and different agents might request decisions at - # different timesteps. This makes it difficult to do things like keep track - # of rewards. + # This functionality is difficult to support because not all agents will + # request decisions at each timestep and different agents might request + # decisions at different timesteps. This makes it difficult to do things + # like keep track of rewards. raise ValueError( "Currently, frame_skip is not supported for Unity environments." ) def behavior_id_to_name(self, behavior_id: int): - raise self._behavior_names[behavior_id] + return self._behavior_names[behavior_id] - def read_reward(self, reward): - return self.reward_spec.encode(reward, ignore_device=True) + def read_obs(self, obs): + return self.observation_spec.encode({"observation": obs}) - def read_obs(self, obs: np.ndarray, behavior_name: str, agent_id: int): - behavior_id = self._behavior_names.index(behavior_name) - observations = self.observation_spec.encode( - {"observation": obs, "behavior_id": behavior_id, "agent_id": agent_id}, - ignore_device=True, + def read_behavior(self, behavior_name): + behavior_id = np.array( + [self._behavior_names.index(name) for name in behavior_name] ) - return observations + return self.behavior_id_spec.encode(behavior_id) + + def read_agent_id(self, agent_id): + return self.agent_id_spec.encode(agent_id) + + def read_reward(self, reward): + return self.reward_spec.encode(reward) + + def read_valid_mask(self, valid): + return self.valid_mask_spec.encode(valid) def read_action(self, action): action = self.action_spec.to_numpy(action, safe=False) @@ -195,6 +232,7 @@ def read_action(self, action): # used for the number of agents in the game. if action.ndim == 0: action = np.expand_dims(action, axis=0) + if isinstance(self.action_spec, CompositeSpec): action = self.action_spec.to_numpy(action, safe=False) continuous_action = np.expand_dims(action["continuous"], axis=0) @@ -218,86 +256,72 @@ def read_action_mask(self, action_mask): def read_done(self, done): return self.done_spec.encode(done) - def _behavior_name_update(self): - self._live_behavior_names = list(self.behavior_specs.keys()) - for k in self._live_behavior_names: - if k not in self._behavior_names: - # We only add to self._behavior_names if the - # behavior name doesn't exist. This helps us - # ensure that the index of old behaviors stays - # the same and that we don't have duplicate entries. - # This is important since we use the index of the behavior - # name as an id for that behavior. - self._behavior_names.append(k) - - def _batch_update(self, behavior_name): - self._current_step_idx = 0 - self._current_behavior_name = behavior_name - self._decision_steps, self._terminal_steps = self.get_steps(behavior_name) - def _get_next_tensordict(self): - num_steps = len(self._decision_steps) + len(self._terminal_steps) - if self._current_step_idx >= num_steps: - raise ValueError("All agents already have actions") - done = False if self._current_step_idx < len(self._decision_steps) else True - steps = self._decision_steps if not done else self._terminal_steps - agent_id = steps.agent_id[self._current_step_idx] - step = steps[agent_id] - # FIXME: Need Tuple support here so we can support observations of varying dimensions. - # Thus, for now we use only the first observation. - obs, reward = step.obs[0], step.reward + observations = [None] * self.num_agents + behavior_names = [None] * self.num_agents + agent_ids = [None] * self.num_agents + rewards = [None] * self.num_agents + dones = [None] * self.num_agents + valid_masks = [None] * self.num_agents + + for behavior_name in self.behavior_specs.keys(): + decision_steps, terminal_steps = self.get_steps(behavior_name) + for i, steps in enumerate([decision_steps, terminal_steps]): + for agent_id in steps.agent_id: + step = steps[agent_id] + + rewards[agent_id] = step.reward + behavior_names[agent_id] = behavior_name + agent_ids[agent_id] = step.agent_id + observations[agent_id] = np.stack(step.obs, axis=0) + dones[agent_id] = False if i == 0 else True + valid_masks[agent_id] = True + + missing_agents = set(range(self.num_agents)) - set(agent_ids) + for missing_agent in missing_agents: + observations[missing_agent] = self.observation_spec["observation"][ + missing_agent + ].zero() + behavior_names[missing_agent] = self._agent_id_to_behavior[missing_agent] + agent_ids[missing_agent] = missing_agent + rewards[missing_agent] = self.reward_spec[missing_agent].zero() + dones[missing_agent] = self.done_spec[missing_agent].zero() + valid_masks[missing_agent] = False + tensordict_out = TensorDict( - source=self.read_obs( - obs, behavior_name=self._current_behavior_name, agent_id=agent_id - ), + source=self.read_obs(np.stack(observations, axis=0)), batch_size=self.batch_size, device=self.device, ) - # tensordict_out.set("action_mask", self.read_action_mask(action_mask)) - tensordict_out.set("reward", self.read_reward(reward)) - tensordict_out.set("done", self.read_done(done)) + tensordict_out.set("behavior_id", self.read_behavior(behavior_names)) + tensordict_out.set("agent_id", self.read_agent_id(np.stack(agent_ids, axis=0))) + tensordict_out.set("reward", self.read_reward(np.stack(rewards, axis=0))) + tensordict_out.set("done", self.read_done(np.stack(dones, axis=0))) + tensordict_out.set( + "valid_mask", self.read_valid_mask(np.stack(valid_masks, axis=0)) + ) return tensordict_out def _step(self, tensordict: TensorDictBase) -> TensorDictBase: - # We step through each agent one at a time, and only perform - # an environment step (send the actions to the environment) - # once all agents are processed. This is because Unity requires - # all agents to have actions before stepping or else the zero - # action will be sent. - # - # In order to step through each agent, we first iterate through - # all behaviors, and determine actions for each agent in that behavior - # and then repeat the loop until all behavior's and their - # agents are accounted for. We then perform an environment step. - action = tensordict.get("action") - unity_action = self.read_action(action) - self.set_action_for_agent( - self._current_behavior_name, tensordict.get("agent_id").item(), unity_action + eligible_agent_mask = torch.logical_and( + tensordict["valid_mask"], torch.logical_not(tensordict["done"]) ) - self._current_step_idx += 1 - try: - tensordict_out = self._get_next_tensordict() - return tensordict_out.select().set("next", tensordict_out) - except ValueError: - behavior_id = self._live_behavior_names.index(self._current_behavior_name) - # If we have more behaviors to go through, keep continuing. Otherwise step the environment and - # then continue again. - if behavior_id < len(self._live_behavior_names) - 1: - self._current_behavior_name = self._live_behavior_names[behavior_id + 1] - self._batch_update(self._current_behavior_name) - tensordict_out = self._get_next_tensordict() - return tensordict_out.select().set("next", tensordict_out) - else: - self._env.step() - self._behavior_name_update() - self._batch_update(self._live_behavior_names[0]) - tensordict_out = self._get_next_tensordict() - return tensordict_out.select().set("next", tensordict_out) + behavior_ids = tensordict["behavior_id"][eligible_agent_mask] + agent_ids = tensordict["agent_id"][eligible_agent_mask] + actions = tensordict["action"].unsqueeze(-1)[eligible_agent_mask] + for action, behavior_id, agent_id in zip(actions, behavior_ids, agent_ids): + unity_action = self.read_action(action) + self.set_action_for_agent( + self.behavior_id_to_name(behavior_id.item()), + agent_id.item(), + unity_action, + ) + self._env.step() + tensordict_out = self._get_next_tensordict() + return tensordict_out.select().set("next", tensordict_out) def _reset(self, tensordict: TensorDictBase | None = None, **kwargs): self._env.reset(**kwargs) - self._behavior_name_update() - self._batch_update(self._live_behavior_names[0]) return self._get_next_tensordict() From fcc9fb95442cdad6413c4c9570e5e1655c528cd7 Mon Sep 17 00:00:00 2001 From: Harish Yerra Date: Fri, 30 Jun 2023 16:56:05 -0400 Subject: [PATCH 003/148] WIP --- torchrl/envs/libs/unity.py | 156 +++++++++++++++++++++++++++---------- 1 file changed, 115 insertions(+), 41 deletions(-) diff --git a/torchrl/envs/libs/unity.py b/torchrl/envs/libs/unity.py index b27db619a69..362166a4217 100644 --- a/torchrl/envs/libs/unity.py +++ b/torchrl/envs/libs/unity.py @@ -136,12 +136,18 @@ def _make_specs(self, env: BaseEnv) -> None: self._agent_id_to_behavior[agent_id] = behavior_name agent_observation_specs = [ - _unity_to_torchrl_spec_transform( - spec, dtype=np.dtype("float32"), device=self.device + CompositeSpec( + { + f"observation_{i}": _unity_to_torchrl_spec_transform( + spec, dtype=np.dtype("float32"), device=self.device + ) + } ) - for spec in behavior_unity_spec.observation_specs + for i, spec in enumerate(behavior_unity_spec.observation_specs) ] + print("agent_observation_specs", agent_observation_specs) agent_observation_spec = torch.stack(agent_observation_specs, dim=0) + print("agent_observation_spec", agent_observation_spec) observation_specs[agent_id] = agent_observation_spec behavior_id_specs[agent_id] = UnboundedDiscreteTensorSpec( @@ -173,16 +179,63 @@ def _make_specs(self, env: BaseEnv) -> None: ) self.observation_spec = CompositeSpec( - observation=torch.stack(observation_specs, dim=0) + { + "agents": CompositeSpec( + {"observation": torch.stack(observation_specs, dim=0)}, + shape=(self.num_agents,), + ) + } + ) + print("self.observation_spec", self.observation_spec) + self.behavior_id_spec = CompositeSpec( + { + "agents": CompositeSpec( + {"behavior_id": torch.stack(behavior_id_specs, dim=0)}, + shape=(self.num_agents,), + ) + } + ) + self.agent_id_spec = CompositeSpec( + { + "agents": CompositeSpec( + {"agent_id": torch.stack(agent_id_specs, dim=0)}, + shape=(self.num_agents,), + ) + } + ) + self.action_spec = CompositeSpec( + { + "agents": CompositeSpec( + {"action": torch.stack(action_specs, dim=0)}, + shape=(self.num_agents,), + ) + } ) - self.behavior_id_spec = torch.stack(behavior_id_specs, dim=0) - self.agent_id_spec = torch.stack(agent_id_specs, dim=0) - self.action_spec = torch.stack(action_specs, dim=0) # FIXME: Support action masks # self.action_mask_spec = torch.stack(action_mask_specs, dim=0) - self.reward_spec = torch.stack(reward_specs, dim=0) - self.done_spec = torch.stack(done_specs, dim=0) - self.valid_mask_spec = torch.stack(valid_mask_specs, dim=0) + self.reward_spec = CompositeSpec( + { + "agents": CompositeSpec( + {"reward": torch.stack(reward_specs, dim=0)}, + shape=(self.num_agents,), + ) + } + ) + self.done_spec = CompositeSpec( + { + "agents": CompositeSpec( + {"done": torch.stack(done_specs, dim=0)}, shape=(self.num_agents,) + ) + } + ) + self.valid_mask_spec = CompositeSpec( + { + "agents": CompositeSpec( + {"valid_mask": torch.stack(valid_mask_specs, dim=0)}, + shape=(self.num_agents,), + ) + } + ) def __repr__(self) -> str: return ( @@ -207,23 +260,32 @@ def _check_kwargs(self, kwargs: dict): def behavior_id_to_name(self, behavior_id: int): return self._behavior_names[behavior_id] - def read_obs(self, obs): - return self.observation_spec.encode({"observation": obs}) + def read_obs(self, agent_id, obs): + print(self.observation_spec) + return self.observation_spec["agents", "observation"][agent_id].encode( + {f"observation_{i}": observation for i, observation in enumerate(obs)} + ) def read_behavior(self, behavior_name): behavior_id = np.array( [self._behavior_names.index(name) for name in behavior_name] ) - return self.behavior_id_spec.encode(behavior_id) + return behavior_id def read_agent_id(self, agent_id): - return self.agent_id_spec.encode(agent_id) + return agent_id def read_reward(self, reward): - return self.reward_spec.encode(reward) + return reward + + def read_feedback(self, feedback): + return feedback + + def read_time(self, time): + return time def read_valid_mask(self, valid): - return self.valid_mask_spec.encode(valid) + return valid def read_action(self, action): action = self.action_spec.to_numpy(action, safe=False) @@ -258,57 +320,69 @@ def read_done(self, done): def _get_next_tensordict(self): observations = [None] * self.num_agents - behavior_names = [None] * self.num_agents + behavior_name = [None] * self.num_agents agent_ids = [None] * self.num_agents rewards = [None] * self.num_agents dones = [None] * self.num_agents + feedbacks = [None] * self.num_agents + times = [None] * self.num_agents valid_masks = [None] * self.num_agents - for behavior_name in self.behavior_specs.keys(): - decision_steps, terminal_steps = self.get_steps(behavior_name) + for behavior_name_ in self.behavior_specs.keys(): + decision_steps, terminal_steps = self.get_steps(behavior_name_) for i, steps in enumerate([decision_steps, terminal_steps]): for agent_id in steps.agent_id: step = steps[agent_id] rewards[agent_id] = step.reward - behavior_names[agent_id] = behavior_name + behavior_name[agent_id] = behavior_name_ agent_ids[agent_id] = step.agent_id - observations[agent_id] = np.stack(step.obs, axis=0) + observations[agent_id] = self.read_obs(agent_id, step.obs) dones[agent_id] = False if i == 0 else True - valid_masks[agent_id] = True + valid_masks[agent_id] = torch.Tensor([True]) missing_agents = set(range(self.num_agents)) - set(agent_ids) for missing_agent in missing_agents: - observations[missing_agent] = self.observation_spec["observation"][ - missing_agent - ].zero() - behavior_names[missing_agent] = self._agent_id_to_behavior[missing_agent] + observations[missing_agent] = self.observation_spec[ + "agents", "observation" + ][missing_agent].zero() + behavior_name[missing_agent] = self._agent_id_to_behavior[missing_agent] agent_ids[missing_agent] = missing_agent - rewards[missing_agent] = self.reward_spec[missing_agent].zero() - dones[missing_agent] = self.done_spec[missing_agent].zero() - valid_masks[missing_agent] = False + rewards[missing_agent] = 0 + dones[missing_agent] = False + valid_masks[missing_agent] = torch.Tensor([False]) tensordict_out = TensorDict( - source=self.read_obs(np.stack(observations, axis=0)), + source={ + "agents": { + "observation": torch.stack(observations, dim=0), + "behavior_id": self.read_behavior(behavior_name), + "agent_id": self.read_agent_id(np.stack(agent_ids, axis=0)), + "reward": self.read_reward(np.stack(rewards, axis=0)), + "feedback": self.read_feedback(np.stack(feedbacks, axis=0)), + "time": self.read_time(np.stack(times, axis=0)), + "done": self.read_done(np.stack(dones, axis=0)), + "valid_mask": self.read_valid_mask(np.stack(valid_masks, axis=0)), + } + }, batch_size=self.batch_size, device=self.device, ) - tensordict_out.set("behavior_id", self.read_behavior(behavior_names)) - tensordict_out.set("agent_id", self.read_agent_id(np.stack(agent_ids, axis=0))) - tensordict_out.set("reward", self.read_reward(np.stack(rewards, axis=0))) - tensordict_out.set("done", self.read_done(np.stack(dones, axis=0))) - tensordict_out.set( - "valid_mask", self.read_valid_mask(np.stack(valid_masks, axis=0)) - ) return tensordict_out def _step(self, tensordict: TensorDictBase) -> TensorDictBase: + print(tensordict) eligible_agent_mask = torch.logical_and( - tensordict["valid_mask"], torch.logical_not(tensordict["done"]) + tensordict["agents", "valid_mask"], + torch.logical_not(tensordict["agents", "done"]), ) - behavior_ids = tensordict["behavior_id"][eligible_agent_mask] - agent_ids = tensordict["agent_id"][eligible_agent_mask] - actions = tensordict["action"].unsqueeze(-1)[eligible_agent_mask] + behavior_ids = tensordict["agents", "behavior_id"][ + eligible_agent_mask.squeeze(dim=-1) + ] + agent_ids = tensordict["agents", "agent_id"][ + eligible_agent_mask.squeeze(dim=-1) + ] + actions = tensordict["agents", "action"].unsqueeze(-1)[eligible_agent_mask] for action, behavior_id, agent_id in zip(actions, behavior_ids, agent_ids): unity_action = self.read_action(action) self.set_action_for_agent( From 416b02c2e61de7de3b0a27a9498de3215136fd5b Mon Sep 17 00:00:00 2001 From: Harish Yerra Date: Sat, 8 Jul 2023 12:44:07 -0400 Subject: [PATCH 004/148] WIP --- torchrl/envs/libs/unity.py | 206 ++++++++++++++----------------------- 1 file changed, 80 insertions(+), 126 deletions(-) diff --git a/torchrl/envs/libs/unity.py b/torchrl/envs/libs/unity.py index 362166a4217..98ee9a30b49 100644 --- a/torchrl/envs/libs/unity.py +++ b/torchrl/envs/libs/unity.py @@ -40,7 +40,6 @@ def _unity_to_torchrl_spec_transform(spec, dtype=None, device="cpu"): elif isinstance(spec, ActionSpec): if spec.continuous_size == len(spec.discrete_branches) == 0: raise ValueError("No available actions") - action_mask_spec = None d_spec = c_spec = None if spec.discrete_size == 1: d_spec = DiscreteTensorSpec( @@ -50,8 +49,6 @@ def _unity_to_torchrl_spec_transform(spec, dtype=None, device="cpu"): d_spec = MultiDiscreteTensorSpec( spec.discrete_branches, shape=[spec.discrete_size], device=device ) - # FIXME: Need tuple support as action masks are 2D arrays - # noqa: E501 action_mask_spec = MultiDiscreteTensorSpec(spec.discrete_branches, dtype=torch.bool, device=device) if spec.continuous_size > 0: dtype = numpy_to_torch_dtype_dict[dtype] @@ -60,9 +57,9 @@ def _unity_to_torchrl_spec_transform(spec, dtype=None, device="cpu"): ) if d_spec and c_spec: - return CompositeSpec(discrete=d_spec, continuous=c_spec), action_mask_spec + return CompositeSpec(discrete=d_spec, continuous=c_spec) else: - return d_spec if d_spec else c_spec, action_mask_spec + return d_spec if d_spec else c_spec else: raise TypeError(f"Unknown spec of type {type(spec)} passed") @@ -108,7 +105,7 @@ def _set_seed(self, seed: int | None): @_classproperty def available_envs(cls) -> list[str]: - raise NotImplementedError("You must provide your own environments") + return [] def _build_env(self, env: BaseEnv): if not env.behavior_specs: @@ -124,7 +121,6 @@ def _make_specs(self, env: BaseEnv) -> None: behavior_id_specs = [None] * self.num_agents agent_id_specs = [None] * self.num_agents action_specs = [None] * self.num_agents - action_mask_specs = [None] * self.num_agents reward_specs = [None] * self.num_agents done_specs = [None] * self.num_agents valid_mask_specs = [None] * self.num_agents @@ -135,39 +131,27 @@ def _make_specs(self, env: BaseEnv) -> None: for agent_id in steps.agent_id: self._agent_id_to_behavior[agent_id] = behavior_name - agent_observation_specs = [ - CompositeSpec( - { - f"observation_{i}": _unity_to_torchrl_spec_transform( - spec, dtype=np.dtype("float32"), device=self.device - ) - } - ) - for i, spec in enumerate(behavior_unity_spec.observation_specs) - ] - print("agent_observation_specs", agent_observation_specs) - agent_observation_spec = torch.stack(agent_observation_specs, dim=0) - print("agent_observation_spec", agent_observation_spec) - observation_specs[agent_id] = agent_observation_spec - + observation_specs[agent_id] = CompositeSpec( + { + f"obs_{i}": _unity_to_torchrl_spec_transform( + spec, dtype=np.dtype("float32"), device=self.device + ) + for i, spec in enumerate( + behavior_unity_spec.observation_specs + ) + } + ) behavior_id_specs[agent_id] = UnboundedDiscreteTensorSpec( shape=1, device=self.device, dtype=torch.int8 ) agent_id_specs[agent_id] = UnboundedDiscreteTensorSpec( shape=1, device=self.device, dtype=torch.int8 ) - - ( - agent_action_spec, - agent_action_mask_spec, - ) = _unity_to_torchrl_spec_transform( + action_specs[agent_id] = _unity_to_torchrl_spec_transform( behavior_unity_spec.action_spec, dtype=np.int32, device=self.device, ) - action_specs[agent_id] = agent_action_spec - action_mask_specs[agent_id] = agent_action_mask_spec - reward_specs[agent_id] = UnboundedContinuousTensorSpec( shape=[1], device=self.device ) @@ -186,7 +170,6 @@ def _make_specs(self, env: BaseEnv) -> None: ) } ) - print("self.observation_spec", self.observation_spec) self.behavior_id_spec = CompositeSpec( { "agents": CompositeSpec( @@ -211,8 +194,6 @@ def _make_specs(self, env: BaseEnv) -> None: ) } ) - # FIXME: Support action masks - # self.action_mask_spec = torch.stack(action_mask_specs, dim=0) self.reward_spec = CompositeSpec( { "agents": CompositeSpec( @@ -249,10 +230,7 @@ def _check_kwargs(self, kwargs: dict): if not isinstance(env, BaseEnv): raise TypeError("env is not of type 'mlagents_envs.base_env.BaseEnv'.") if "frame_skip" in kwargs and kwargs["frame_skip"] != 1: - # This functionality is difficult to support because not all agents will - # request decisions at each timestep and different agents might request - # decisions at different timesteps. This makes it difficult to do things - # like keep track of rewards. + # FIXME: Add support for this. raise ValueError( "Currently, frame_skip is not supported for Unity environments." ) @@ -261,127 +239,102 @@ def behavior_id_to_name(self, behavior_id: int): return self._behavior_names[behavior_id] def read_obs(self, agent_id, obs): - print(self.observation_spec) return self.observation_spec["agents", "observation"][agent_id].encode( - {f"observation_{i}": observation for i, observation in enumerate(obs)} + {f"obs_{i}": observation for i, observation in enumerate(obs)}, ) - def read_behavior(self, behavior_name): - behavior_id = np.array( - [self._behavior_names.index(name) for name in behavior_name] + def read_behavior(self, agent_id, behavior_name): + return self.behavior_id_spec["agents", "behavior_id"][agent_id].encode( + self._behavior_names.index(behavior_name) ) - return behavior_id def read_agent_id(self, agent_id): - return agent_id + return self.agent_id_spec["agents", "agent_id"][agent_id].encode(agent_id) - def read_reward(self, reward): - return reward + def read_reward(self, agent_id, reward): + return self.reward_spec[agent_id].encode(reward) - def read_feedback(self, feedback): - return feedback - - def read_time(self, time): - return time - - def read_valid_mask(self, valid): - return valid + def read_valid_mask(self, agent_id, valid): + return self.valid_mask_spec["agents", "valid_mask"][agent_id].encode(valid) def read_action(self, action): action = self.action_spec.to_numpy(action, safe=False) - # We expand the dimensions at the 0 axis because actions are - # defined to be 2D arrays with an extra first dimension being - # used for the number of agents in the game. - if action.ndim == 0: - action = np.expand_dims(action, axis=0) + # Actions are defined to be 2D arrays with the first dimension + # used for the number of agents in the game and the second + # dimension used for the action. + if isinstance(action, dict): + action = {k: np.reshape(v, (1, 1)) for k, v in action.items()} + else: + action = np.reshape(action, (1, 1)) if isinstance(self.action_spec, CompositeSpec): - action = self.action_spec.to_numpy(action, safe=False) - continuous_action = np.expand_dims(action["continuous"], axis=0) - discrete_action = np.expand_dims(action["discrete"], axis=0) - action = ActionTuple(continuous_action, discrete_action) + action = ActionTuple(action["continuous"], action["discrete"]) elif isinstance(self.action_spec, DiscreteTensorSpec | MultiDiscreteTensorSpec): - action = np.expand_dims(action, axis=0) action = ActionTuple(None, action) else: - action = self.action_spec.to_numpy(action) - action = np.expand_dims(action, axis=0) action = ActionTuple(action, None) return action - def read_action_mask(self, action_mask): - # if not self.action_mask_spec: - # return None - # return self.action_mask_spec.encode(action_mask) - return None - - def read_done(self, done): - return self.done_spec.encode(done) + def read_done(self, agent_id, done): + return self.done_spec[agent_id].encode(done) def _get_next_tensordict(self): - observations = [None] * self.num_agents - behavior_name = [None] * self.num_agents - agent_ids = [None] * self.num_agents - rewards = [None] * self.num_agents - dones = [None] * self.num_agents - feedbacks = [None] * self.num_agents - times = [None] * self.num_agents - valid_masks = [None] * self.num_agents - + agent_tds = [] + seen_agent_ids = set() for behavior_name_ in self.behavior_specs.keys(): decision_steps, terminal_steps = self.get_steps(behavior_name_) for i, steps in enumerate([decision_steps, terminal_steps]): for agent_id in steps.agent_id: + agent_id = int(agent_id) step = steps[agent_id] + done = False if i == 0 else True + seen_agent_ids.add(agent_id) + + agent_td = TensorDict( + source={ + "observation": self.read_obs(agent_id, step.obs), + "behavior_id": self.read_behavior(agent_id, behavior_name_), + "agent_id": self.read_agent_id(step.agent_id), + "reward": self.read_reward(agent_id, step.reward), + "done": self.read_done(agent_id, done), + "valid_mask": self.read_valid_mask(agent_id, True), + }, + batch_size=[], + ) + agent_tds.append(agent_td) - rewards[agent_id] = step.reward - behavior_name[agent_id] = behavior_name_ - agent_ids[agent_id] = step.agent_id - observations[agent_id] = self.read_obs(agent_id, step.obs) - dones[agent_id] = False if i == 0 else True - valid_masks[agent_id] = torch.Tensor([True]) - - missing_agents = set(range(self.num_agents)) - set(agent_ids) + missing_agents = set(range(self.num_agents)) - seen_agent_ids for missing_agent in missing_agents: - observations[missing_agent] = self.observation_spec[ - "agents", "observation" - ][missing_agent].zero() - behavior_name[missing_agent] = self._agent_id_to_behavior[missing_agent] - agent_ids[missing_agent] = missing_agent - rewards[missing_agent] = 0 - dones[missing_agent] = False - valid_masks[missing_agent] = torch.Tensor([False]) - - tensordict_out = TensorDict( - source={ - "agents": { - "observation": torch.stack(observations, dim=0), - "behavior_id": self.read_behavior(behavior_name), - "agent_id": self.read_agent_id(np.stack(agent_ids, axis=0)), - "reward": self.read_reward(np.stack(rewards, axis=0)), - "feedback": self.read_feedback(np.stack(feedbacks, axis=0)), - "time": self.read_time(np.stack(times, axis=0)), - "done": self.read_done(np.stack(dones, axis=0)), - "valid_mask": self.read_valid_mask(np.stack(valid_masks, axis=0)), - } - }, - batch_size=self.batch_size, - device=self.device, - ) + agent_td = TensorDict( + source={ + "observation": self.observation_spec["agents", "observation"][ + missing_agent + ].zero(), + "behavior_id": self.read_behavior( + agent_id, self._agent_id_to_behavior[missing_agent] + ), + "agent_id": self.read_agent_id(missing_agent), + "reward": self.reward_spec[missing_agent].zero(), + "done": self.done_spec[missing_agent].zero(), + "valid_mask": self.read_valid_mask(agent_id, False), + }, + batch_size=[], + ) + agent_tds.append(agent_td) + + agents_td = torch.stack(agent_tds, dim=0) + tensordict_out = TensorDict(source={"agents": agents_td}, batch_size=[]) return tensordict_out def _step(self, tensordict: TensorDictBase) -> TensorDictBase: - print(tensordict) + # FIXME: Figure out why tensordict["agents", "valid_mask"] and tensordict["agents", "done"] + # have different shapes which require us to squeeze. eligible_agent_mask = torch.logical_and( - tensordict["agents", "valid_mask"], - torch.logical_not(tensordict["agents", "done"]), + torch.squeeze(tensordict["agents", "valid_mask"]), + torch.logical_not(torch.squeeze(tensordict["agents", "done"])), ) - behavior_ids = tensordict["agents", "behavior_id"][ - eligible_agent_mask.squeeze(dim=-1) - ] - agent_ids = tensordict["agents", "agent_id"][ - eligible_agent_mask.squeeze(dim=-1) - ] + behavior_ids = tensordict["agents", "behavior_id"][eligible_agent_mask] + agent_ids = tensordict["agents", "agent_id"][eligible_agent_mask] actions = tensordict["agents", "action"].unsqueeze(-1)[eligible_agent_mask] for action, behavior_id, agent_id in zip(actions, behavior_ids, agent_ids): unity_action = self.read_action(action) @@ -396,7 +349,8 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: def _reset(self, tensordict: TensorDictBase | None = None, **kwargs): self._env.reset(**kwargs) - return self._get_next_tensordict() + tensordict_out = self._get_next_tensordict() + return tensordict_out class UnityEnv(UnityWrapper): From eaaabaa8d12b312ee89cdaebd9f4a5c493dfab1a Mon Sep 17 00:00:00 2001 From: Harish Yerra Date: Mon, 10 Jul 2023 13:34:00 -0400 Subject: [PATCH 005/148] Include an environment property to store agent_id to behavior_name mapping instead of storing it in TensorDicts --- torchrl/envs/libs/unity.py | 62 ++++++++------------------------------ 1 file changed, 12 insertions(+), 50 deletions(-) diff --git a/torchrl/envs/libs/unity.py b/torchrl/envs/libs/unity.py index 98ee9a30b49..51a07a26750 100644 --- a/torchrl/envs/libs/unity.py +++ b/torchrl/envs/libs/unity.py @@ -9,7 +9,6 @@ DiscreteTensorSpec, MultiDiscreteTensorSpec, UnboundedContinuousTensorSpec, - UnboundedDiscreteTensorSpec, ) from torchrl.data.utils import numpy_to_torch_dtype_dict from torchrl.envs.common import _EnvWrapper @@ -113,13 +112,12 @@ def _build_env(self, env: BaseEnv): env.step() self._behavior_names = list(env.behavior_specs.keys()) self.num_agents = self._compute_num_agents(env) - self._agent_id_to_behavior = {} + self._agent_ids = torch.tensor(range(self.num_agents), dtype=torch.int) + self._agent_id_to_behavior_name = {} return env def _make_specs(self, env: BaseEnv) -> None: observation_specs = [None] * self.num_agents - behavior_id_specs = [None] * self.num_agents - agent_id_specs = [None] * self.num_agents action_specs = [None] * self.num_agents reward_specs = [None] * self.num_agents done_specs = [None] * self.num_agents @@ -129,7 +127,7 @@ def _make_specs(self, env: BaseEnv) -> None: decision_steps, terminal_steps = env.get_steps(behavior_name) for steps in [decision_steps, terminal_steps]: for agent_id in steps.agent_id: - self._agent_id_to_behavior[agent_id] = behavior_name + self._agent_id_to_behavior_name[agent_id] = behavior_name observation_specs[agent_id] = CompositeSpec( { @@ -141,12 +139,6 @@ def _make_specs(self, env: BaseEnv) -> None: ) } ) - behavior_id_specs[agent_id] = UnboundedDiscreteTensorSpec( - shape=1, device=self.device, dtype=torch.int8 - ) - agent_id_specs[agent_id] = UnboundedDiscreteTensorSpec( - shape=1, device=self.device, dtype=torch.int8 - ) action_specs[agent_id] = _unity_to_torchrl_spec_transform( behavior_unity_spec.action_spec, dtype=np.int32, @@ -170,22 +162,6 @@ def _make_specs(self, env: BaseEnv) -> None: ) } ) - self.behavior_id_spec = CompositeSpec( - { - "agents": CompositeSpec( - {"behavior_id": torch.stack(behavior_id_specs, dim=0)}, - shape=(self.num_agents,), - ) - } - ) - self.agent_id_spec = CompositeSpec( - { - "agents": CompositeSpec( - {"agent_id": torch.stack(agent_id_specs, dim=0)}, - shape=(self.num_agents,), - ) - } - ) self.action_spec = CompositeSpec( { "agents": CompositeSpec( @@ -235,22 +211,14 @@ def _check_kwargs(self, kwargs: dict): "Currently, frame_skip is not supported for Unity environments." ) - def behavior_id_to_name(self, behavior_id: int): - return self._behavior_names[behavior_id] + def agent_id_to_behavior_name(self, agent_id: int): + return self._agent_id_to_behavior_name[agent_id] def read_obs(self, agent_id, obs): return self.observation_spec["agents", "observation"][agent_id].encode( {f"obs_{i}": observation for i, observation in enumerate(obs)}, ) - def read_behavior(self, agent_id, behavior_name): - return self.behavior_id_spec["agents", "behavior_id"][agent_id].encode( - self._behavior_names.index(behavior_name) - ) - - def read_agent_id(self, agent_id): - return self.agent_id_spec["agents", "agent_id"][agent_id].encode(agent_id) - def read_reward(self, agent_id, reward): return self.reward_spec[agent_id].encode(reward) @@ -279,8 +247,9 @@ def read_done(self, agent_id, done): return self.done_spec[agent_id].encode(done) def _get_next_tensordict(self): - agent_tds = [] + agent_tds = [None] * self.num_agents seen_agent_ids = set() + for behavior_name_ in self.behavior_specs.keys(): decision_steps, terminal_steps = self.get_steps(behavior_name_) for i, steps in enumerate([decision_steps, terminal_steps]): @@ -293,15 +262,13 @@ def _get_next_tensordict(self): agent_td = TensorDict( source={ "observation": self.read_obs(agent_id, step.obs), - "behavior_id": self.read_behavior(agent_id, behavior_name_), - "agent_id": self.read_agent_id(step.agent_id), "reward": self.read_reward(agent_id, step.reward), "done": self.read_done(agent_id, done), "valid_mask": self.read_valid_mask(agent_id, True), }, batch_size=[], ) - agent_tds.append(agent_td) + agent_tds[agent_id] = agent_td missing_agents = set(range(self.num_agents)) - seen_agent_ids for missing_agent in missing_agents: @@ -310,17 +277,13 @@ def _get_next_tensordict(self): "observation": self.observation_spec["agents", "observation"][ missing_agent ].zero(), - "behavior_id": self.read_behavior( - agent_id, self._agent_id_to_behavior[missing_agent] - ), - "agent_id": self.read_agent_id(missing_agent), "reward": self.reward_spec[missing_agent].zero(), "done": self.done_spec[missing_agent].zero(), "valid_mask": self.read_valid_mask(agent_id, False), }, batch_size=[], ) - agent_tds.append(agent_td) + agent_tds[missing_agent] = agent_td agents_td = torch.stack(agent_tds, dim=0) tensordict_out = TensorDict(source={"agents": agents_td}, batch_size=[]) @@ -333,13 +296,12 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: torch.squeeze(tensordict["agents", "valid_mask"]), torch.logical_not(torch.squeeze(tensordict["agents", "done"])), ) - behavior_ids = tensordict["agents", "behavior_id"][eligible_agent_mask] - agent_ids = tensordict["agents", "agent_id"][eligible_agent_mask] + agent_ids = self._agent_ids[eligible_agent_mask] actions = tensordict["agents", "action"].unsqueeze(-1)[eligible_agent_mask] - for action, behavior_id, agent_id in zip(actions, behavior_ids, agent_ids): + for action, agent_id in zip(actions, agent_ids): unity_action = self.read_action(action) self.set_action_for_agent( - self.behavior_id_to_name(behavior_id.item()), + self.agent_id_to_behavior_name(agent_id.item()), agent_id.item(), unity_action, ) From 46fb97f0a7b5d055132a36aab481c8ed9363daaf Mon Sep 17 00:00:00 2001 From: Harish Yerra Date: Mon, 17 Jul 2023 10:51:05 -0400 Subject: [PATCH 006/148] Fix some bugs with action conversion --- torchrl/envs/libs/unity.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/torchrl/envs/libs/unity.py b/torchrl/envs/libs/unity.py index 51a07a26750..768da6f6515 100644 --- a/torchrl/envs/libs/unity.py +++ b/torchrl/envs/libs/unity.py @@ -37,14 +37,14 @@ def _unity_to_torchrl_spec_transform(spec, dtype=None, device="cpu"): dtype = numpy_to_torch_dtype_dict[dtype] return UnboundedContinuousTensorSpec(shape=shape, device=device, dtype=dtype) elif isinstance(spec, ActionSpec): - if spec.continuous_size == len(spec.discrete_branches) == 0: + if spec.continuous_size == spec.discrete_size == 0: raise ValueError("No available actions") d_spec = c_spec = None if spec.discrete_size == 1: d_spec = DiscreteTensorSpec( spec.discrete_branches[0], shape=[spec.discrete_size], device=device ) - else: + elif spec.discrete_size > 1: d_spec = MultiDiscreteTensorSpec( spec.discrete_branches, shape=[spec.discrete_size], device=device ) @@ -141,7 +141,7 @@ def _make_specs(self, env: BaseEnv) -> None: ) action_specs[agent_id] = _unity_to_torchrl_spec_transform( behavior_unity_spec.action_spec, - dtype=np.int32, + dtype=np.dtype("int32"), device=self.device, ) reward_specs[agent_id] = UnboundedContinuousTensorSpec( @@ -231,9 +231,11 @@ def read_action(self, action): # used for the number of agents in the game and the second # dimension used for the action. if isinstance(action, dict): - action = {k: np.reshape(v, (1, 1)) for k, v in action.items()} + action = { + k: np.reshape(v, (1, np.prod(v.shape))) for k, v in action.items() + } else: - action = np.reshape(action, (1, 1)) + action = np.reshape(action, (1, np.prod(action.shape))) if isinstance(self.action_spec, CompositeSpec): action = ActionTuple(action["continuous"], action["discrete"]) From 329f91191337a6ba3c55951ee8349cadc2d261ec Mon Sep 17 00:00:00 2001 From: Harish Yerra Date: Tue, 18 Jul 2023 15:57:07 -0400 Subject: [PATCH 007/148] Store observations in the format obs_{agent_id}_{obs_number} to prevent crash when observations are different between agents --- torchrl/envs/libs/unity.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/torchrl/envs/libs/unity.py b/torchrl/envs/libs/unity.py index 768da6f6515..5e8a8fa747f 100644 --- a/torchrl/envs/libs/unity.py +++ b/torchrl/envs/libs/unity.py @@ -131,7 +131,7 @@ def _make_specs(self, env: BaseEnv) -> None: observation_specs[agent_id] = CompositeSpec( { - f"obs_{i}": _unity_to_torchrl_spec_transform( + f"obs_{agent_id}_{i}": _unity_to_torchrl_spec_transform( spec, dtype=np.dtype("float32"), device=self.device ) for i, spec in enumerate( @@ -216,7 +216,7 @@ def agent_id_to_behavior_name(self, agent_id: int): def read_obs(self, agent_id, obs): return self.observation_spec["agents", "observation"][agent_id].encode( - {f"obs_{i}": observation for i, observation in enumerate(obs)}, + {f"obs_{agent_id}_{i}": observation for i, observation in enumerate(obs)}, ) def read_reward(self, agent_id, reward): From a54bba041ceed54cb6bb87ee9ccf621139f21b21 Mon Sep 17 00:00:00 2001 From: Omkar Salpekar Date: Mon, 17 Jul 2023 21:04:02 -0400 Subject: [PATCH 008/148] Remove Envpool from CCI (#1390) --- .circleci/config.yml | 51 -------------------------------------------- 1 file changed, 51 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 39eac793249..67a16f054d7 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -126,53 +126,6 @@ jobs: name: Check Python types statically command: mypy --install-types --non-interactive --config-file mypy.ini - unittest_linux_envpool_gpu: - <<: *binary_common - machine: - image: ubuntu-2004-cuda-11.4:202110-01 - resource_class: gpu.nvidia.medium - environment: - image_name: "pytorch/manylinux-cuda117" - TAR_OPTIONS: --no-same-owner - PYTHON_VERSION: << parameters.python_version >> - CU_VERSION: << parameters.cu_version >> - - steps: - - checkout - - designate_upload_channel - - run: - name: Generate cache key - # This will refresh cache on Sundays, nightly build should generate new cache. - command: echo "$(date +"%Y-%U")" > .circleci-weekly - - restore_cache: - keys: - - env-v3-linux-{{ arch }}-py<< parameters.python_version >>-{{ checksum ".circleci/unittest/linux_libs/scripts_envpool/environment.yml" }}-{{ checksum ".circleci-weekly" }} - - run: - name: Setup - command: .circleci/unittest/linux_libs/scripts_envpool/setup_env.sh - - save_cache: - key: env-v3-linux-{{ arch }}-py<< parameters.python_version >>-{{ checksum ".circleci/unittest/linux_libs/scripts_envpool/environment.yml" }}-{{ checksum ".circleci-weekly" }} - paths: - - conda - - env - - run: - name: Install torchrl - command: docker run -t --gpus all -v $PWD:$PWD -w $PWD -e UPLOAD_CHANNEL -e CU_VERSION "${image_name}" .circleci/unittest/linux_libs/scripts_envpool/install.sh - - run: - name: Run tests - command: bash .circleci/unittest/linux_libs/scripts_envpool/run_test.sh - - run: - name: Codecov upload - command: | - curl -Os https://uploader.codecov.io/latest/linux/codecov - chmod +x codecov - ./codecov -t ${CODECOV_TOKEN} -s ./ -Z -F linux-envpool - - run: - name: Post Process - command: docker run -t --gpus all -v $PWD:$PWD -w $PWD "${image_name}" .circleci/unittest/linux_libs/scripts_envpool/post_process.sh - - store_test_results: - path: test-results - unittest_linux_stable_gpu: <<: *binary_common machine: @@ -237,10 +190,6 @@ jobs: workflows: unittest: jobs: - - unittest_linux_envpool_gpu: - cu_version: cu117 - name: unittest_linux_envpool_gpu_py3.8 - python_version: '3.8' - unittest_linux_stable_gpu: cu_version: cu116 name: unittest_linux_stable_gpu_py3.9 From 48d9e8b79d2f52592b9b381a62c19494b4fdf2dd Mon Sep 17 00:00:00 2001 From: degensean <99024081+degensean@users.noreply.github.com> Date: Wed, 19 Jul 2023 05:02:05 +0800 Subject: [PATCH 009/148] [Doc] Fix doctest examples (#1393) --- torchrl/collectors/collectors.py | 91 +++++++++++++++++++------------- 1 file changed, 53 insertions(+), 38 deletions(-) diff --git a/torchrl/collectors/collectors.py b/torchrl/collectors/collectors.py index 74d2271851d..1d55113a2bb 100644 --- a/torchrl/collectors/collectors.py +++ b/torchrl/collectors/collectors.py @@ -69,8 +69,8 @@ class RandomPolicy: >>> from tensordict import TensorDict >>> from torchrl.data.tensor_specs import BoundedTensorSpec >>> action_spec = BoundedTensorSpec(-torch.ones(3), torch.ones(3)) - >>> actor = RandomPolicy(spec=action_spec) - >>> td = actor(TensorDict(batch_size=[])) # selects a random action in the cube [-1; 1] + >>> actor = RandomPolicy(action_spec=action_spec) + >>> td = actor(TensorDict({}, batch_size=[])) # selects a random action in the cube [-1; 1] """ def __init__(self, action_spec: TensorSpec, action_key: NestedKey = "action"): @@ -446,25 +446,28 @@ class SyncDataCollector(DataCollectorBase): ... break TensorDict( fields={ - action: Tensor(shape=torch.Size([4, 50, 1]), device=cpu, dtype=torch.float32, is_shared=False), + action: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.float32, is_shared=False), collector: TensorDict( fields={ - step_count: Tensor(shape=torch.Size([4, 50]), device=cpu, dtype=torch.int64, is_shared=False), - "traj_ids: Tensor(shape=torch.Size([4, 50]), device=cpu, dtype=torch.int64, is_shared=False)}, - batch_size=torch.Size([4, 50]), + traj_ids: Tensor(shape=torch.Size([200]), device=cpu, dtype=torch.int64, is_shared=False)}, + batch_size=torch.Size([200]), device=cpu, is_shared=False), - done: Tensor(shape=torch.Size([4, 50, 1]), device=cpu, dtype=torch.bool, is_shared=False), - mask: Tensor(shape=torch.Size([4, 50]), device=cpu, dtype=torch.bool, is_shared=False), + done: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.bool, is_shared=False), next: TensorDict( fields={ - observation: Tensor(shape=torch.Size([4, 50, 3]), device=cpu, dtype=torch.float32, is_shared=False)}, - batch_size=torch.Size([4, 50]), + done: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([200, 3]), device=cpu, dtype=torch.float32, is_shared=False), + reward: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.float32, is_shared=False), + step_count: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.int64, is_shared=False), + truncated: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.bool, is_shared=False)}, + batch_size=torch.Size([200]), device=cpu, is_shared=False), - observation: Tensor(shape=torch.Size([4, 50, 3]), device=cpu, dtype=torch.float32, is_shared=False), - reward: Tensor(shape=torch.Size([4, 50, 1]), device=cpu, dtype=torch.float32, is_shared=False)}, - batch_size=torch.Size([4, 50]), + observation: Tensor(shape=torch.Size([200, 3]), device=cpu, dtype=torch.float32, is_shared=False), + step_count: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.int64, is_shared=False), + truncated: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.bool, is_shared=False)}, + batch_size=torch.Size([200]), device=cpu, is_shared=False) >>> del collector @@ -717,9 +720,11 @@ def set_seed(self, seed: int, static_seed: bool = False) -> int: Examples: >>> from torchrl.envs import ParallelEnv >>> from torchrl.envs.libs.gym import GymEnv + >>> from tensordict.nn import TensorDictModule >>> env_fn = lambda: GymEnv("Pendulum-v1") >>> env_fn_parallel = ParallelEnv(6, env_fn) - >>> collector = SyncDataCollector(env_fn_parallel) + >>> policy = TensorDictModule(nn.Linear(3, 1), in_keys=["observation"], out_keys=["action"]) + >>> collector = SyncDataCollector(env_fn_parallel, policy, total_frames=300, frames_per_batch=100) >>> out_seed = collector.set_seed(1) # out_seed = 6 """ @@ -1393,9 +1398,13 @@ def set_seed(self, seed: int, static_seed: bool = False) -> int: environment. Examples: - >>> env_fn = lambda: GymEnv("Pendulum-v0") + >>> from torchrl.envs import ParallelEnv + >>> from torchrl.envs.libs.gym import GymEnv + >>> from tensordict.nn import TensorDictModule + >>> env_fn = lambda: GymEnv("Pendulum-v1") >>> env_fn_parallel = lambda: ParallelEnv(6, env_fn) - >>> collector = SyncDataCollector(env_fn_parallel) + >>> policy = TensorDictModule(nn.Linear(3, 1), in_keys=["observation"], out_keys=["action"]) + >>> collector = SyncDataCollector(env_fn_parallel, policy, frames_per_batch=100, total_frames=300) >>> out_seed = collector.set_seed(1) # out_seed = 6 """ @@ -1533,25 +1542,28 @@ class MultiSyncDataCollector(_MultiDataCollector): ... break TensorDict( fields={ - action: Tensor(shape=torch.Size([4, 50, 1]), device=cpu, dtype=torch.float32, is_shared=False), + action: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.float32, is_shared=False), collector: TensorDict( fields={ - step_count: Tensor(shape=torch.Size([4, 50]), device=cpu, dtype=torch.int64, is_shared=False), - traj_ids: Tensor(shape=torch.Size([4, 50]), device=cpu, dtype=torch.int64, is_shared=False)}, - batch_size=torch.Size([4, 50]), + traj_ids: Tensor(shape=torch.Size([200]), device=cpu, dtype=torch.int64, is_shared=False)}, + batch_size=torch.Size([200]), device=cpu, is_shared=False), - done: Tensor(shape=torch.Size([4, 50, 1]), device=cpu, dtype=torch.bool, is_shared=False), - mask: Tensor(shape=torch.Size([4, 50]), device=cpu, dtype=torch.bool, is_shared=False), + done: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.bool, is_shared=False), next: TensorDict( fields={ - observation: Tensor(shape=torch.Size([4, 50, 3]), device=cpu, dtype=torch.float32, is_shared=False)}, - batch_size=torch.Size([4, 50]), + done: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([200, 3]), device=cpu, dtype=torch.float32, is_shared=False), + reward: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.float32, is_shared=False), + step_count: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.int64, is_shared=False), + truncated: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.bool, is_shared=False)}, + batch_size=torch.Size([200]), device=cpu, is_shared=False), - observation: Tensor(shape=torch.Size([4, 50, 3]), device=cpu, dtype=torch.float32, is_shared=False), - reward: Tensor(shape=torch.Size([4, 50, 1]), device=cpu, dtype=torch.float32, is_shared=False)}, - batch_size=torch.Size([4, 50]), + observation: Tensor(shape=torch.Size([200, 3]), device=cpu, dtype=torch.float32, is_shared=False), + step_count: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.int64, is_shared=False), + truncated: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.bool, is_shared=False)}, + batch_size=torch.Size([200]), device=cpu, is_shared=False) >>> collector.shutdown() @@ -1764,25 +1776,28 @@ class MultiaSyncDataCollector(_MultiDataCollector): ... break TensorDict( fields={ - action: Tensor(shape=torch.Size([4, 50, 1]), device=cpu, dtype=torch.float32, is_shared=False), + action: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.float32, is_shared=False), collector: TensorDict( fields={ - step_count: Tensor(shape=torch.Size([4, 50]), device=cpu, dtype=torch.int64, is_shared=False), - traj_ids: Tensor(shape=torch.Size([4, 50]), device=cpu, dtype=torch.int64, is_shared=False)}, - batch_size=torch.Size([4, 50]), + traj_ids: Tensor(shape=torch.Size([200]), device=cpu, dtype=torch.int64, is_shared=False)}, + batch_size=torch.Size([200]), device=cpu, is_shared=False), - done: Tensor(shape=torch.Size([4, 50, 1]), device=cpu, dtype=torch.bool, is_shared=False), - mask: Tensor(shape=torch.Size([4, 50]), device=cpu, dtype=torch.bool, is_shared=False), + done: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.bool, is_shared=False), next: TensorDict( fields={ - observation: Tensor(shape=torch.Size([4, 50, 3]), device=cpu, dtype=torch.float32, is_shared=False)}, - batch_size=torch.Size([4, 50]), + done: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([200, 3]), device=cpu, dtype=torch.float32, is_shared=False), + reward: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.float32, is_shared=False), + step_count: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.int64, is_shared=False), + truncated: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.bool, is_shared=False)}, + batch_size=torch.Size([200]), device=cpu, is_shared=False), - observation: Tensor(shape=torch.Size([4, 50, 3]), device=cpu, dtype=torch.float32, is_shared=False), - reward: Tensor(shape=torch.Size([4, 50, 1]), device=cpu, dtype=torch.float32, is_shared=False)}, - batch_size=torch.Size([4, 50]), + observation: Tensor(shape=torch.Size([200, 3]), device=cpu, dtype=torch.float32, is_shared=False), + step_count: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.int64, is_shared=False), + truncated: Tensor(shape=torch.Size([200, 1]), device=cpu, dtype=torch.bool, is_shared=False)}, + batch_size=torch.Size([200]), device=cpu, is_shared=False) >>> collector.shutdown() From 99da166393a70f9781eb63e32871b46dd417a21e Mon Sep 17 00:00:00 2001 From: degensean <99024081+degensean@users.noreply.github.com> Date: Thu, 20 Jul 2023 02:17:30 +0800 Subject: [PATCH 010/148] [BugFix] Fix bug in ppo example config (#1396) --- examples/ppo/config_example2.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/examples/ppo/config_example2.yaml b/examples/ppo/config_example2.yaml index 465e6727119..7647a43eb05 100644 --- a/examples/ppo/config_example2.yaml +++ b/examples/ppo/config_example2.yaml @@ -9,6 +9,7 @@ env: reward_scaling: 1.0 from_pixels: False n_samples_stats: 3 + device: cuda # collector collector: From 2fa358a0477e92e021432966138e34dd3501f59c Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 21 Jul 2023 20:15:26 +0100 Subject: [PATCH 011/148] [BugFix] Fix ppo training NaN occurences (#1403) --- examples/ppo/config_example2.yaml | 2 +- examples/ppo/utils.py | 12 +++++++++--- torchrl/modules/distributions/utils.py | 3 +-- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/examples/ppo/config_example2.yaml b/examples/ppo/config_example2.yaml index 7647a43eb05..9d06c8a82ee 100644 --- a/examples/ppo/config_example2.yaml +++ b/examples/ppo/config_example2.yaml @@ -28,7 +28,7 @@ logger: optim: device: cuda lr: 3e-4 - weight_decay: 0.0 + weight_decay: 1e-4 lr_scheduler: False # loss diff --git a/examples/ppo/utils.py b/examples/ppo/utils.py index 47fcb992b36..8c75582b043 100644 --- a/examples/ppo/utils.py +++ b/examples/ppo/utils.py @@ -1,6 +1,11 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + import torch.nn import torch.optim -from tensordict.nn import TensorDictModule +from tensordict.nn import NormalParamExtractor, TensorDictModule from torchrl.collectors import SyncDataCollector from torchrl.data import CompositeSpec, LazyMemmapStorage, TensorDictReplayBuffer @@ -29,7 +34,6 @@ ActorValueOperator, ConvNet, MLP, - NormalParamWrapper, OneHotCategorical, ProbabilisticActor, TanhNormal, @@ -332,7 +336,9 @@ def make_ppo_modules_state(proof_environment): in_features=shared_features_size, out_features=num_outputs, num_cells=[] ) if continuous_actions: - policy_net = NormalParamWrapper(policy_net) + policy_net = torch.nn.Sequential( + policy_net, NormalParamExtractor(scale_lb=1e-2) + ) policy_module = TensorDictModule( module=policy_net, diff --git a/torchrl/modules/distributions/utils.py b/torchrl/modules/distributions/utils.py index 9d5ca41fae3..3fc64b4c03f 100644 --- a/torchrl/modules/distributions/utils.py +++ b/torchrl/modules/distributions/utils.py @@ -160,5 +160,4 @@ def safetanh(x, eps): # noqa: D103 def safeatanh(y, eps): # noqa: D103 lim = 1.0 - eps - y = y.clone() - return y.clamp(-lim, lim) + return y.clamp(-lim, lim).atanh() From 4149579b1c587fc8ee5703247e66b8065cb901a3 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Tue, 25 Jul 2023 21:39:03 +0100 Subject: [PATCH 012/148] [Example] Multiagent examples: MAPPO-IPPO-MADDPG-IDDPG-IQL-QMIX-VDN (#1027) Signed-off-by: Matteo Bettini --- .../linux_examples/scripts/environment.yml | 1 + .../linux_examples/scripts/run_test.sh | 25 ++ examples/multiagent/README.md | 69 +++++ examples/multiagent/iql.py | 231 +++++++++++++++ examples/multiagent/iql.yaml | 38 +++ examples/multiagent/maddpg_iddpg.py | 257 +++++++++++++++++ examples/multiagent/maddpg_iddpg.yaml | 39 +++ examples/multiagent/mappo_ippo.py | 260 +++++++++++++++++ examples/multiagent/mappo_ippo.yaml | 41 +++ examples/multiagent/qmix_vdn.py | 263 ++++++++++++++++++ examples/multiagent/qmix_vdn.yaml | 39 +++ examples/multiagent/utils/__init__.py | 4 + examples/multiagent/utils/logging.py | 147 ++++++++++ 13 files changed, 1414 insertions(+) create mode 100644 examples/multiagent/README.md create mode 100644 examples/multiagent/iql.py create mode 100644 examples/multiagent/iql.yaml create mode 100644 examples/multiagent/maddpg_iddpg.py create mode 100644 examples/multiagent/maddpg_iddpg.yaml create mode 100644 examples/multiagent/mappo_ippo.py create mode 100644 examples/multiagent/mappo_ippo.yaml create mode 100644 examples/multiagent/qmix_vdn.py create mode 100644 examples/multiagent/qmix_vdn.yaml create mode 100644 examples/multiagent/utils/__init__.py create mode 100644 examples/multiagent/utils/logging.py diff --git a/.circleci/unittest/linux_examples/scripts/environment.yml b/.circleci/unittest/linux_examples/scripts/environment.yml index 7a91696ca46..a671b55c48d 100644 --- a/.circleci/unittest/linux_examples/scripts/environment.yml +++ b/.circleci/unittest/linux_examples/scripts/environment.yml @@ -27,3 +27,4 @@ dependencies: - mlflow - av - coverage + - vmas diff --git a/.circleci/unittest/linux_examples/scripts/run_test.sh b/.circleci/unittest/linux_examples/scripts/run_test.sh index a9f361f49c0..201971f4161 100755 --- a/.circleci/unittest/linux_examples/scripts/run_test.sh +++ b/.circleci/unittest/linux_examples/scripts/run_test.sh @@ -246,6 +246,31 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/td3/td3.py \ collector.collector_device=cuda:0 \ env.name=Pendulum-v1 \ logger.backend= +python .circleci/unittest/helpers/coverage_run_parallel.py examples/multiagent/mappo_ippo.py \ + collector.n_iters=2 \ + collector.frames_per_batch=200 \ + train.num_epochs=3 \ + train.minibatch_size=100 \ + logger.backend= +python .circleci/unittest/helpers/coverage_run_parallel.py examples/multiagent/maddpg_iddpg.py \ + collector.n_iters=2 \ + collector.frames_per_batch=200 \ + train.num_epochs=3 \ + train.minibatch_size=100 \ + logger.backend= +python .circleci/unittest/helpers/coverage_run_parallel.py examples/multiagent/iql.py \ + collector.n_iters=2 \ + collector.frames_per_batch=200 \ + train.num_epochs=3 \ + train.minibatch_size=100 \ + logger.backend= +python .circleci/unittest/helpers/coverage_run_parallel.py examples/multiagent/qmix_vdn.py \ + collector.n_iters=2 \ + collector.frames_per_batch=200 \ + train.num_epochs=3 \ + train.minibatch_size=100 \ + logger.backend= + python .circleci/unittest/helpers/coverage_run_parallel.py examples/bandits/dqn.py --n_steps=100 diff --git a/examples/multiagent/README.md b/examples/multiagent/README.md new file mode 100644 index 00000000000..7c9e8b708be --- /dev/null +++ b/examples/multiagent/README.md @@ -0,0 +1,69 @@ +# Multi-agent examples + +In this folder we provide a set of multi-agent example scripts using the [VMAS](https://github.com/proroklab/VectorizedMultiAgentSimulator) simulator. + +

+ +

+ +
The MARL algorithms contained in the scripts of this folder run on three multi-robot tasks in VMAS.
+ +For more details on the experiment setup and the environments please refer to the corresponding section of the appendix in the [TorchRL paper](https://arxiv.org/abs/2306.00577). + +## Using the scripts + +### Install + +First you need to install vmas and the dependencies of the scripts. + +Install torchrl and tensordict following repo instructions. + +Install vmas and dependencies: + +```bash +pip install vmas +pip install wandb moviepy +pip install hydra-core +``` + +### Run + +To run the scripts just execute the corresponding python file after having modified the corresponding config +according to your needs. +The config can be found in the .yaml file with the same name. + +For example: +```bash +python mappo_ippo.py +``` + +You can even change the config from the command line like: + +```bash +python mappo_ippo.py --m env.scenario_name=navigation +``` + +### Computational demand +The scripts are set up for collecting many frames, if your compute is limited, you can change the "frames_per_batch" +and "num_epochs" parameters to reduce compute requirements. + +### Script structure + +The scripts are self-contained. +This means that all the code you will need to look at is contained in the script file. +No helper functions are used. + +The structure of scripts follows this order: +- Configuration dictionary for the script +- Environment creation +- Modules creation +- Collector instantiation +- Replay buffer instantiation +- Loss module creation +- Training loop (with inner minibatch loops) +- Evaluation run (at the desired frequency) + +Logging is done by default to wandb. +The logging backend can be changed in the config files to one of "wandb", "tensorboard", "csv", "mlflow". + +All the scripts follow the same on-policy training structure so that results can be compared across different algorithms. diff --git a/examples/multiagent/iql.py b/examples/multiagent/iql.py new file mode 100644 index 00000000000..00c7bf5fc87 --- /dev/null +++ b/examples/multiagent/iql.py @@ -0,0 +1,231 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +import time + +import hydra +import torch + +from tensordict.nn import TensorDictModule +from torch import nn +from torchrl.collectors import SyncDataCollector +from torchrl.data import TensorDictReplayBuffer +from torchrl.data.replay_buffers.samplers import SamplerWithoutReplacement +from torchrl.data.replay_buffers.storages import LazyTensorStorage +from torchrl.envs import RewardSum, TransformedEnv +from torchrl.envs.libs.vmas import VmasEnv +from torchrl.envs.utils import ExplorationType, set_exploration_type +from torchrl.modules import EGreedyWrapper, QValueModule, SafeSequential +from torchrl.modules.models.multiagent import MultiAgentMLP +from torchrl.objectives import DQNLoss, SoftUpdate, ValueEstimators +from utils.logging import init_logging, log_evaluation, log_training + + +def rendering_callback(env, td): + env.frames.append(env.render(mode="rgb_array", agent_index_focus=None)) + + +@hydra.main(version_base="1.1", config_path=".", config_name="iql") +def train(cfg: "DictConfig"): # noqa: F821 + # Device + cfg.train.device = "cpu" if not torch.has_cuda else "cuda:0" + cfg.env.device = cfg.train.device + + # Seeding + torch.manual_seed(cfg.seed) + + # Sampling + cfg.env.vmas_envs = cfg.collector.frames_per_batch // cfg.env.max_steps + cfg.collector.total_frames = cfg.collector.frames_per_batch * cfg.collector.n_iters + cfg.buffer.memory_size = cfg.collector.frames_per_batch + + # Create env and env_test + env = VmasEnv( + scenario=cfg.env.scenario_name, + num_envs=cfg.env.vmas_envs, + continuous_actions=False, + max_steps=cfg.env.max_steps, + device=cfg.env.device, + seed=cfg.seed, + # Scenario kwargs + **cfg.env.scenario, + ) + env = TransformedEnv( + env, + RewardSum(in_keys=[env.reward_key], out_keys=[("agents", "episode_reward")]), + ) + + env_test = VmasEnv( + scenario=cfg.env.scenario_name, + num_envs=cfg.eval.evaluation_episodes, + continuous_actions=False, + max_steps=cfg.env.max_steps, + device=cfg.env.device, + seed=cfg.seed, + # Scenario kwargs + **cfg.env.scenario, + ) + + # Policy + net = MultiAgentMLP( + n_agent_inputs=env.observation_spec["agents", "observation"].shape[-1], + n_agent_outputs=env.action_spec.space.n, + n_agents=env.n_agents, + centralised=False, + share_params=cfg.model.shared_parameters, + device=cfg.train.device, + depth=2, + num_cells=256, + activation_class=nn.Tanh, + ) + module = TensorDictModule( + net, in_keys=[("agents", "observation")], out_keys=[("agents", "action_value")] + ) + value_module = QValueModule( + action_value_key=("agents", "action_value"), + out_keys=[ + env.action_key, + ("agents", "action_value"), + ("agents", "chosen_action_value"), + ], + spec=env.unbatched_action_spec, + action_space=None, + ) + qnet = SafeSequential(module, value_module) + + qnet_explore = EGreedyWrapper( + qnet, + eps_init=0.3, + eps_end=0, + annealing_num_steps=int(cfg.collector.total_frames * (1 / 2)), + action_key=env.action_key, + spec=env.unbatched_action_spec[env.action_key], + ) + + collector = SyncDataCollector( + env, + qnet_explore, + device=cfg.env.device, + storing_device=cfg.train.device, + frames_per_batch=cfg.collector.frames_per_batch, + total_frames=cfg.collector.total_frames, + ) + + replay_buffer = TensorDictReplayBuffer( + storage=LazyTensorStorage(cfg.buffer.memory_size, device=cfg.train.device), + sampler=SamplerWithoutReplacement(), + batch_size=cfg.train.minibatch_size, + ) + + loss_module = DQNLoss(qnet, delay_value=True) + loss_module.set_keys( + action_value=("agents", "action_value"), + action=env.action_key, + value=("agents", "chosen_action_value"), + reward=env.reward_key, + ) + loss_module.make_value_estimator(ValueEstimators.TD0, gamma=cfg.loss.gamma) + target_net_updater = SoftUpdate(loss_module, eps=1 - cfg.loss.tau) + + optim = torch.optim.Adam(loss_module.parameters(), cfg.train.lr) + + # Logging + if cfg.logger.backend: + model_name = ("Het" if not cfg.model.shared_parameters else "") + "IQL" + logger = init_logging(cfg, model_name) + + total_time = 0 + total_frames = 0 + sampling_start = time.time() + for i, tensordict_data in enumerate(collector): + print(f"\nIteration {i}") + + sampling_time = time.time() - sampling_start + + tensordict_data.set( + ("next", "done"), + tensordict_data.get(("next", "done")) + .unsqueeze(-1) + .expand(tensordict_data.get(("next", env.reward_key)).shape), + ) # We need to expand the done to match the reward shape + + current_frames = tensordict_data.numel() + total_frames += current_frames + data_view = tensordict_data.reshape(-1) + replay_buffer.extend(data_view) + + training_tds = [] + training_start = time.time() + for _ in range(cfg.train.num_epochs): + for _ in range(cfg.collector.frames_per_batch // cfg.train.minibatch_size): + subdata = replay_buffer.sample() + loss_vals = loss_module(subdata) + training_tds.append(loss_vals.detach()) + + loss_value = loss_vals["loss"] + + loss_value.backward() + + total_norm = torch.nn.utils.clip_grad_norm_( + loss_module.parameters(), cfg.train.max_grad_norm + ) + training_tds[-1].set("grad_norm", total_norm.mean()) + + optim.step() + optim.zero_grad() + target_net_updater.step() + + qnet_explore.step(frames=current_frames) # Update exploration annealing + collector.update_policy_weights_() + + training_time = time.time() - training_start + + iteration_time = sampling_time + training_time + total_time += iteration_time + training_tds = torch.stack(training_tds) + + # More logs + if cfg.logger.backend: + log_training( + logger, + training_tds, + tensordict_data, + sampling_time, + training_time, + total_time, + i, + current_frames, + total_frames, + step=i, + ) + + if ( + cfg.eval.evaluation_episodes > 0 + and i % cfg.eval.evaluation_interval == 0 + and cfg.logger.backend + ): + evaluation_start = time.time() + with torch.no_grad() and set_exploration_type(ExplorationType.MEAN): + env_test.frames = [] + rollouts = env_test.rollout( + max_steps=cfg.env.max_steps, + policy=qnet, + callback=rendering_callback, + auto_cast_to_device=True, + break_when_any_done=False, + # We are running vectorized evaluation we do not want it to stop when just one env is done + ) + + evaluation_time = time.time() - evaluation_start + + log_evaluation(logger, rollouts, env_test, evaluation_time, step=i) + + if cfg.logger.backend == "wandb": + logger.experiment.log({}, commit=True) + sampling_start = time.time() + + +if __name__ == "__main__": + train() diff --git a/examples/multiagent/iql.yaml b/examples/multiagent/iql.yaml new file mode 100644 index 00000000000..801503b7e9d --- /dev/null +++ b/examples/multiagent/iql.yaml @@ -0,0 +1,38 @@ +seed: 0 + +env: + max_steps: 100 + scenario_name: "balance" + scenario: + n_agents: 3 + device: ??? # These values will be populated dynamically + vmas_envs: ??? + +model: + shared_parameters: True + +collector: + frames_per_batch: 60_000 # Frames sampled each sampling iteration + n_iters: 500 # Number of sampling/training iterations + total_frames: ??? + +buffer: + memory_size: ??? + +loss: + gamma: 0.9 + tau: 0.005 # For target net + +train: + num_epochs: 45 # optimization steps per batch of data collected + minibatch_size: 4096 # size of minibatches used in each epoch + lr: 5e-5 + max_grad_norm: 40.0 + device: ??? + +eval: + evaluation_interval: 20 + evaluation_episodes: 200 + +logger: + backend: wandb # Delete to remove logging diff --git a/examples/multiagent/maddpg_iddpg.py b/examples/multiagent/maddpg_iddpg.py new file mode 100644 index 00000000000..437e489b58b --- /dev/null +++ b/examples/multiagent/maddpg_iddpg.py @@ -0,0 +1,257 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +import time + +import hydra +import torch + +from tensordict.nn import TensorDictModule +from torch import nn +from torchrl.collectors import SyncDataCollector +from torchrl.data import TensorDictReplayBuffer +from torchrl.data.replay_buffers.samplers import SamplerWithoutReplacement +from torchrl.data.replay_buffers.storages import LazyTensorStorage +from torchrl.envs import RewardSum, TransformedEnv +from torchrl.envs.libs.vmas import VmasEnv +from torchrl.envs.utils import ExplorationType, set_exploration_type +from torchrl.modules import ( + AdditiveGaussianWrapper, + ProbabilisticActor, + TanhDelta, + ValueOperator, +) +from torchrl.modules.models.multiagent import MultiAgentMLP +from torchrl.objectives import DDPGLoss, SoftUpdate, ValueEstimators +from utils.logging import init_logging, log_evaluation, log_training + + +def rendering_callback(env, td): + env.frames.append(env.render(mode="rgb_array", agent_index_focus=None)) + + +@hydra.main(version_base="1.1", config_path=".", config_name="maddpg_iddpg") +def train(cfg: "DictConfig"): # noqa: F821 + # Device + cfg.train.device = "cpu" if not torch.has_cuda else "cuda:0" + cfg.env.device = cfg.train.device + + # Seeding + torch.manual_seed(cfg.seed) + + # Sampling + cfg.env.vmas_envs = cfg.collector.frames_per_batch // cfg.env.max_steps + cfg.collector.total_frames = cfg.collector.frames_per_batch * cfg.collector.n_iters + cfg.buffer.memory_size = cfg.collector.frames_per_batch + + # Create env and env_test + env = VmasEnv( + scenario=cfg.env.scenario_name, + num_envs=cfg.env.vmas_envs, + continuous_actions=True, + max_steps=cfg.env.max_steps, + device=cfg.env.device, + seed=cfg.seed, + # Scenario kwargs + **cfg.env.scenario, + ) + env = TransformedEnv( + env, + RewardSum(in_keys=[env.reward_key], out_keys=[("agents", "episode_reward")]), + ) + + env_test = VmasEnv( + scenario=cfg.env.scenario_name, + num_envs=cfg.eval.evaluation_episodes, + continuous_actions=True, + max_steps=cfg.env.max_steps, + device=cfg.env.device, + seed=cfg.seed, + # Scenario kwargs + **cfg.env.scenario, + ) + + # Policy + actor_net = MultiAgentMLP( + n_agent_inputs=env.observation_spec["agents", "observation"].shape[-1], + n_agent_outputs=env.action_spec.shape[-1], + n_agents=env.n_agents, + centralised=False, + share_params=cfg.model.shared_parameters, + device=cfg.train.device, + depth=2, + num_cells=256, + activation_class=nn.Tanh, + ) + policy_module = TensorDictModule( + actor_net, in_keys=[("agents", "observation")], out_keys=[("agents", "param")] + ) + policy = ProbabilisticActor( + module=policy_module, + spec=env.unbatched_action_spec, + in_keys=[("agents", "param")], + out_keys=[env.action_key], + distribution_class=TanhDelta, + distribution_kwargs={ + "min": env.unbatched_action_spec[("agents", "action")].space.minimum, + "max": env.unbatched_action_spec[("agents", "action")].space.maximum, + }, + return_log_prob=False, + ) + + policy_explore = AdditiveGaussianWrapper( + policy, + annealing_num_steps=int(cfg.collector.total_frames * (1 / 2)), + action_key=env.action_key, + ) + + # Critic + module = MultiAgentMLP( + n_agent_inputs=env.observation_spec["agents", "observation"].shape[-1] + + env.action_spec.shape[-1], # Q critic takes action and value + n_agent_outputs=1, + n_agents=env.n_agents, + centralised=cfg.model.centralised_critic, + share_params=cfg.model.shared_parameters, + device=cfg.train.device, + depth=2, + num_cells=256, + activation_class=nn.Tanh, + ) + value_module = ValueOperator( + module=module, + in_keys=[("agents", "observation"), env.action_key], + out_keys=[("agents", "state_action_value")], + ) + + collector = SyncDataCollector( + env, + policy_explore, + device=cfg.env.device, + storing_device=cfg.train.device, + frames_per_batch=cfg.collector.frames_per_batch, + total_frames=cfg.collector.total_frames, + ) + + replay_buffer = TensorDictReplayBuffer( + storage=LazyTensorStorage(cfg.buffer.memory_size, device=cfg.train.device), + sampler=SamplerWithoutReplacement(), + batch_size=cfg.train.minibatch_size, + ) + + loss_module = DDPGLoss( + actor_network=policy, value_network=value_module, delay_value=True + ) + loss_module.set_keys( + state_action_value=("agents", "state_action_value"), + reward=env.reward_key, + ) + loss_module.make_value_estimator(ValueEstimators.TD0, gamma=cfg.loss.gamma) + target_net_updater = SoftUpdate(loss_module, eps=1 - cfg.loss.tau) + + optim = torch.optim.Adam(loss_module.parameters(), cfg.train.lr) + + # Logging + if cfg.logger.backend: + model_name = ( + ("Het" if not cfg.model.shared_parameters else "") + + ("MA" if cfg.model.centralised_critic else "I") + + "DDPG" + ) + logger = init_logging(cfg, model_name) + + total_time = 0 + total_frames = 0 + sampling_start = time.time() + for i, tensordict_data in enumerate(collector): + print(f"\nIteration {i}") + + sampling_time = time.time() - sampling_start + + tensordict_data.set( + ("next", "done"), + tensordict_data.get(("next", "done")) + .unsqueeze(-1) + .expand(tensordict_data.get(("next", env.reward_key)).shape), + ) # We need to expand the done to match the reward shape + + current_frames = tensordict_data.numel() + total_frames += current_frames + data_view = tensordict_data.reshape(-1) + replay_buffer.extend(data_view) + + training_tds = [] + training_start = time.time() + for _ in range(cfg.train.num_epochs): + for _ in range(cfg.collector.frames_per_batch // cfg.train.minibatch_size): + subdata = replay_buffer.sample() + loss_vals = loss_module(subdata) + training_tds.append(loss_vals.detach()) + + loss_value = loss_vals["loss_actor"] + loss_vals["loss_value"] + + loss_value.backward() + + total_norm = torch.nn.utils.clip_grad_norm_( + loss_module.parameters(), cfg.train.max_grad_norm + ) + training_tds[-1].set("grad_norm", total_norm.mean()) + + optim.step() + optim.zero_grad() + target_net_updater.step() + + policy_explore.step(frames=current_frames) # Update exploration annealing + collector.update_policy_weights_() + + training_time = time.time() - training_start + + iteration_time = sampling_time + training_time + total_time += iteration_time + training_tds = torch.stack(training_tds) + + # More logs + if cfg.logger.backend: + log_training( + logger, + training_tds, + tensordict_data, + sampling_time, + training_time, + total_time, + i, + current_frames, + total_frames, + step=i, + ) + + if ( + cfg.eval.evaluation_episodes > 0 + and i % cfg.eval.evaluation_interval == 0 + and cfg.logger.backend + ): + evaluation_start = time.time() + with torch.no_grad() and set_exploration_type(ExplorationType.MEAN): + env_test.frames = [] + rollouts = env_test.rollout( + max_steps=cfg.env.max_steps, + policy=policy, + callback=rendering_callback, + auto_cast_to_device=True, + break_when_any_done=False, + # We are running vectorized evaluation we do not want it to stop when just one env is done + ) + + evaluation_time = time.time() - evaluation_start + + log_evaluation(logger, rollouts, env_test, evaluation_time, step=i) + + if cfg.logger.backend == "wandb": + logger.experiment.log({}, commit=True) + sampling_start = time.time() + + +if __name__ == "__main__": + train() diff --git a/examples/multiagent/maddpg_iddpg.yaml b/examples/multiagent/maddpg_iddpg.yaml new file mode 100644 index 00000000000..19328cbc39e --- /dev/null +++ b/examples/multiagent/maddpg_iddpg.yaml @@ -0,0 +1,39 @@ +seed: 0 + +env: + max_steps: 100 + scenario_name: "balance" + scenario: + n_agents: 3 + device: ??? # These values will be populated dynamically + vmas_envs: ??? + +model: + shared_parameters: False # MADDPG paper does not use shared params because reward function can be different + centralised_critic: True # MADDPG if True, IDDPG if False + +collector: + frames_per_batch: 60_000 # Frames sampled each sampling iteration + n_iters: 500 # Number of sampling/training iterations + total_frames: ??? + +buffer: + memory_size: ??? + +loss: + gamma: 0.9 + tau: 0.005 # For target net + +train: + num_epochs: 45 # optimization steps per batch of data collected + minibatch_size: 4096 # size of minibatches used in each epoch + lr: 5e-5 + max_grad_norm: 40.0 + device: ??? + +eval: + evaluation_interval: 20 + evaluation_episodes: 200 + +logger: + backend: wandb # Delete to remove logging diff --git a/examples/multiagent/mappo_ippo.py b/examples/multiagent/mappo_ippo.py new file mode 100644 index 00000000000..fd5a201413b --- /dev/null +++ b/examples/multiagent/mappo_ippo.py @@ -0,0 +1,260 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + + +import time + +import hydra +import torch + +from tensordict.nn import TensorDictModule +from tensordict.nn.distributions import NormalParamExtractor +from torch import nn +from torchrl.collectors import SyncDataCollector +from torchrl.data import TensorDictReplayBuffer +from torchrl.data.replay_buffers.samplers import SamplerWithoutReplacement +from torchrl.data.replay_buffers.storages import LazyTensorStorage +from torchrl.envs import RewardSum, TransformedEnv +from torchrl.envs.libs.vmas import VmasEnv +from torchrl.modules import ProbabilisticActor, TanhNormal, ValueOperator +from torchrl.modules.models.multiagent import MultiAgentMLP +from torchrl.objectives import ClipPPOLoss, ValueEstimators +from utils.logging import init_logging, log_evaluation, log_training + + +def rendering_callback(env, td): + env.frames.append(env.render(mode="rgb_array", agent_index_focus=None)) + + +@hydra.main(version_base="1.1", config_path=".", config_name="mappo_ippo") +def train(cfg: "DictConfig"): # noqa: F821 + # Device + cfg.train.device = "cpu" if not torch.has_cuda else "cuda:0" + cfg.env.device = cfg.train.device + + # Seeding + torch.manual_seed(cfg.seed) + + # Sampling + cfg.env.vmas_envs = cfg.collector.frames_per_batch // cfg.env.max_steps + cfg.collector.total_frames = cfg.collector.frames_per_batch * cfg.collector.n_iters + cfg.buffer.memory_size = cfg.collector.frames_per_batch + + # Create env and env_test + env = VmasEnv( + scenario=cfg.env.scenario_name, + num_envs=cfg.env.vmas_envs, + continuous_actions=True, + max_steps=cfg.env.max_steps, + device=cfg.env.device, + seed=cfg.seed, + # Scenario kwargs + **cfg.env.scenario, + ) + env = TransformedEnv( + env, + RewardSum(in_keys=[env.reward_key], out_keys=[("agents", "episode_reward")]), + ) + + env_test = VmasEnv( + scenario=cfg.env.scenario_name, + num_envs=cfg.eval.evaluation_episodes, + continuous_actions=True, + max_steps=cfg.env.max_steps, + device=cfg.env.device, + seed=cfg.seed, + # Scenario kwargs + **cfg.env.scenario, + ) + + # Policy + actor_net = nn.Sequential( + MultiAgentMLP( + n_agent_inputs=env.observation_spec["agents", "observation"].shape[-1], + n_agent_outputs=2 * env.action_spec.shape[-1], + n_agents=env.n_agents, + centralised=False, + share_params=cfg.model.shared_parameters, + device=cfg.train.device, + depth=2, + num_cells=256, + activation_class=nn.Tanh, + ), + NormalParamExtractor(), + ) + policy_module = TensorDictModule( + actor_net, + in_keys=[("agents", "observation")], + out_keys=[("agents", "loc"), ("agents", "scale")], + ) + policy = ProbabilisticActor( + module=policy_module, + spec=env.unbatched_action_spec, + in_keys=[("agents", "loc"), ("agents", "scale")], + out_keys=[env.action_key], + distribution_class=TanhNormal, + distribution_kwargs={ + "min": env.unbatched_action_spec[("agents", "action")].space.minimum, + "max": env.unbatched_action_spec[("agents", "action")].space.maximum, + }, + return_log_prob=True, + ) + + # Critic + module = MultiAgentMLP( + n_agent_inputs=env.observation_spec["agents", "observation"].shape[-1], + n_agent_outputs=1, + n_agents=env.n_agents, + centralised=cfg.model.centralised_critic, + share_params=cfg.model.shared_parameters, + device=cfg.train.device, + depth=2, + num_cells=256, + activation_class=nn.Tanh, + ) + value_module = ValueOperator( + module=module, + in_keys=[("agents", "observation")], + ) + + collector = SyncDataCollector( + env, + policy, + device=cfg.env.device, + storing_device=cfg.train.device, + frames_per_batch=cfg.collector.frames_per_batch, + total_frames=cfg.collector.total_frames, + ) + + replay_buffer = TensorDictReplayBuffer( + storage=LazyTensorStorage(cfg.buffer.memory_size, device=cfg.train.device), + sampler=SamplerWithoutReplacement(), + batch_size=cfg.train.minibatch_size, + ) + + # Loss + loss_module = ClipPPOLoss( + actor=policy, + critic=value_module, + clip_epsilon=cfg.loss.clip_epsilon, + entropy_coef=cfg.loss.entropy_eps, + normalize_advantage=False, + ) + loss_module.set_keys(reward=env.reward_key, action=env.action_key) + loss_module.make_value_estimator( + ValueEstimators.GAE, gamma=cfg.loss.gamma, lmbda=cfg.loss.lmbda + ) + optim = torch.optim.Adam(loss_module.parameters(), cfg.train.lr) + + # Logging + if cfg.logger.backend: + model_name = ( + ("Het" if not cfg.model.shared_parameters else "") + + ("MA" if cfg.model.centralised_critic else "I") + + "PPO" + ) + logger = init_logging(cfg, model_name) + + total_time = 0 + total_frames = 0 + sampling_start = time.time() + for i, tensordict_data in enumerate(collector): + print(f"\nIteration {i}") + + sampling_time = time.time() - sampling_start + + tensordict_data.set( + ("next", "done"), + tensordict_data.get(("next", "done")) + .unsqueeze(-1) + .expand(tensordict_data.get(("next", env.reward_key)).shape), + ) # We need to expand the done to match the reward shape + + with torch.no_grad(): + loss_module.value_estimator( + tensordict_data, + params=loss_module.critic_params, + target_params=loss_module.target_critic_params, + ) + current_frames = tensordict_data.numel() + total_frames += current_frames + data_view = tensordict_data.reshape(-1) + replay_buffer.extend(data_view) + + training_tds = [] + training_start = time.time() + for _ in range(cfg.train.num_epochs): + for _ in range(cfg.collector.frames_per_batch // cfg.train.minibatch_size): + subdata = replay_buffer.sample() + loss_vals = loss_module(subdata) + training_tds.append(loss_vals.detach()) + + loss_value = ( + loss_vals["loss_objective"] + + loss_vals["loss_critic"] + + loss_vals["loss_entropy"] + ) + + loss_value.backward() + + total_norm = torch.nn.utils.clip_grad_norm_( + loss_module.parameters(), cfg.train.max_grad_norm + ) + training_tds[-1].set("grad_norm", total_norm.mean()) + + optim.step() + optim.zero_grad() + + collector.update_policy_weights_() + + training_time = time.time() - training_start + + iteration_time = sampling_time + training_time + total_time += iteration_time + training_tds = torch.stack(training_tds) + + # More logs + if cfg.logger.backend: + log_training( + logger, + training_tds, + tensordict_data, + sampling_time, + training_time, + total_time, + i, + current_frames, + total_frames, + step=i, + ) + + if ( + cfg.eval.evaluation_episodes > 0 + and i % cfg.eval.evaluation_interval == 0 + and cfg.logger.backend + ): + evaluation_start = time.time() + with torch.no_grad(): + env_test.frames = [] + rollouts = env_test.rollout( + max_steps=cfg.env.max_steps, + policy=policy, + callback=rendering_callback, + auto_cast_to_device=True, + break_when_any_done=False, + # We are running vectorized evaluation we do not want it to stop when just one env is done + ) + + evaluation_time = time.time() - evaluation_start + + log_evaluation(logger, rollouts, env_test, evaluation_time, step=i) + + if cfg.logger.backend == "wandb": + logger.experiment.log({}, commit=True) + sampling_start = time.time() + + +if __name__ == "__main__": + train() diff --git a/examples/multiagent/mappo_ippo.yaml b/examples/multiagent/mappo_ippo.yaml new file mode 100644 index 00000000000..befec1cf1ca --- /dev/null +++ b/examples/multiagent/mappo_ippo.yaml @@ -0,0 +1,41 @@ +seed: 0 + +env: + max_steps: 100 + scenario_name: "balance" + scenario: + n_agents: 3 + device: ??? # These values will be populated dynamically + vmas_envs: ??? + +model: + shared_parameters: True + centralised_critic: True # MAPPO if True, IPPO if False + +collector: + frames_per_batch: 60_000 # Frames sampled each sampling iteration + n_iters: 500 # Number of sampling/training iterations + total_frames: ??? + +buffer: + memory_size: ??? + +loss: + gamma: 0.9 + lmbda: 0.9 + entropy_eps: 0 + clip_epsilon: 0.2 + +train: + num_epochs: 45 # optimization steps per batch of data collected + minibatch_size: 4096 # size of minibatches used in each epoch + lr: 5e-5 + max_grad_norm: 40.0 + device: ??? + +eval: + evaluation_interval: 20 + evaluation_episodes: 200 + +logger: + backend: wandb # Delete to remove logging diff --git a/examples/multiagent/qmix_vdn.py b/examples/multiagent/qmix_vdn.py new file mode 100644 index 00000000000..55c5ef012ba --- /dev/null +++ b/examples/multiagent/qmix_vdn.py @@ -0,0 +1,263 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +import time + +import hydra +import torch + +from tensordict.nn import TensorDictModule +from torch import nn +from torchrl.collectors import SyncDataCollector +from torchrl.data import TensorDictReplayBuffer +from torchrl.data.replay_buffers.samplers import SamplerWithoutReplacement +from torchrl.data.replay_buffers.storages import LazyTensorStorage +from torchrl.envs import RewardSum, TransformedEnv +from torchrl.envs.libs.vmas import VmasEnv +from torchrl.envs.utils import ExplorationType, set_exploration_type +from torchrl.modules import EGreedyWrapper, QValueModule, SafeSequential +from torchrl.modules.models.multiagent import MultiAgentMLP, QMixer, VDNMixer +from torchrl.objectives import SoftUpdate, ValueEstimators +from torchrl.objectives.multiagent.qmixer import QMixerLoss +from utils.logging import init_logging, log_evaluation, log_training + + +def rendering_callback(env, td): + env.frames.append(env.render(mode="rgb_array", agent_index_focus=None)) + + +@hydra.main(version_base="1.1", config_path=".", config_name="qmix_vdn") +def train(cfg: "DictConfig"): # noqa: F821 + # Device + cfg.train.device = "cpu" if not torch.has_cuda else "cuda:0" + cfg.env.device = cfg.train.device + + # Seeding + torch.manual_seed(cfg.seed) + + # Sampling + cfg.env.vmas_envs = cfg.collector.frames_per_batch // cfg.env.max_steps + cfg.collector.total_frames = cfg.collector.frames_per_batch * cfg.collector.n_iters + cfg.buffer.memory_size = cfg.collector.frames_per_batch + + # Create env and env_test + env = VmasEnv( + scenario=cfg.env.scenario_name, + num_envs=cfg.env.vmas_envs, + continuous_actions=False, + max_steps=cfg.env.max_steps, + device=cfg.env.device, + seed=cfg.seed, + # Scenario kwargs + **cfg.env.scenario, + ) + env = TransformedEnv( + env, + RewardSum(in_keys=[env.reward_key], out_keys=[("agents", "episode_reward")]), + ) + + env_test = VmasEnv( + scenario=cfg.env.scenario_name, + num_envs=cfg.eval.evaluation_episodes, + continuous_actions=False, + max_steps=cfg.env.max_steps, + device=cfg.env.device, + seed=cfg.seed, + # Scenario kwargs + **cfg.env.scenario, + ) + + # Policy + net = MultiAgentMLP( + n_agent_inputs=env.observation_spec["agents", "observation"].shape[-1], + n_agent_outputs=env.action_spec.space.n, + n_agents=env.n_agents, + centralised=False, + share_params=cfg.model.shared_parameters, + device=cfg.train.device, + depth=2, + num_cells=256, + activation_class=nn.Tanh, + ) + module = TensorDictModule( + net, in_keys=[("agents", "observation")], out_keys=[("agents", "action_value")] + ) + value_module = QValueModule( + action_value_key=("agents", "action_value"), + out_keys=[ + env.action_key, + ("agents", "action_value"), + ("agents", "chosen_action_value"), + ], + spec=env.unbatched_action_spec, + action_space=None, + ) + qnet = SafeSequential(module, value_module) + + qnet_explore = EGreedyWrapper( + qnet, + eps_init=0.3, + eps_end=0, + annealing_num_steps=int(cfg.collector.total_frames * (1 / 2)), + action_key=env.action_key, + spec=env.unbatched_action_spec[env.action_key], + ) + + if cfg.loss.mixer_type == "qmix": + mixer = TensorDictModule( + module=QMixer( + state_shape=env.unbatched_observation_spec[ + "agents", "observation" + ].shape, + mixing_embed_dim=32, + n_agents=env.n_agents, + device=cfg.train.device, + ), + in_keys=[("agents", "chosen_action_value"), ("agents", "observation")], + out_keys=["chosen_action_value"], + ) + elif cfg.loss.mixer_type == "vdn": + mixer = TensorDictModule( + module=VDNMixer( + n_agents=env.n_agents, + device=cfg.train.device, + ), + in_keys=[("agents", "chosen_action_value")], + out_keys=["chosen_action_value"], + ) + else: + raise ValueError("Mixer type not in the example") + + collector = SyncDataCollector( + env, + qnet_explore, + device=cfg.env.device, + storing_device=cfg.train.device, + frames_per_batch=cfg.collector.frames_per_batch, + total_frames=cfg.collector.total_frames, + ) + + replay_buffer = TensorDictReplayBuffer( + storage=LazyTensorStorage(cfg.buffer.memory_size, device=cfg.train.device), + sampler=SamplerWithoutReplacement(), + batch_size=cfg.train.minibatch_size, + ) + + loss_module = QMixerLoss(qnet, mixer, delay_value=True) + loss_module.set_keys( + action_value=("agents", "action_value"), + local_value=("agents", "chosen_action_value"), + global_value="chosen_action_value", + action=env.action_key, + ) + loss_module.make_value_estimator(ValueEstimators.TD0, gamma=cfg.loss.gamma) + target_net_updater = SoftUpdate(loss_module, eps=1 - cfg.loss.tau) + + optim = torch.optim.Adam(loss_module.parameters(), cfg.train.lr) + + # Logging + if cfg.logger.backend: + model_name = ( + "Het" if not cfg.model.shared_parameters else "" + ) + cfg.loss.mixer_type.upper() + logger = init_logging(cfg, model_name) + + total_time = 0 + total_frames = 0 + sampling_start = time.time() + for i, tensordict_data in enumerate(collector): + print(f"\nIteration {i}") + + sampling_time = time.time() - sampling_start + + # Remove agent dimension from reward (since it is shared in QMIX/VDN) + tensordict_data.set( + ("next", "reward"), tensordict_data.get(("next", env.reward_key)).mean(-2) + ) + del tensordict_data["next", env.reward_key] + tensordict_data.set( + ("next", "episode_reward"), + tensordict_data.get(("next", "agents", "episode_reward")).mean(-2), + ) + del tensordict_data["next", "agents", "episode_reward"] + + current_frames = tensordict_data.numel() + total_frames += current_frames + data_view = tensordict_data.reshape(-1) + replay_buffer.extend(data_view) + + training_tds = [] + training_start = time.time() + for _ in range(cfg.train.num_epochs): + for _ in range(cfg.collector.frames_per_batch // cfg.train.minibatch_size): + subdata = replay_buffer.sample() + loss_vals = loss_module(subdata) + training_tds.append(loss_vals.detach()) + + loss_value = loss_vals["loss"] + + loss_value.backward() + + total_norm = torch.nn.utils.clip_grad_norm_( + loss_module.parameters(), cfg.train.max_grad_norm + ) + training_tds[-1].set("grad_norm", total_norm.mean()) + + optim.step() + optim.zero_grad() + target_net_updater.step() + + qnet_explore.step(frames=current_frames) # Update exploration annealing + collector.update_policy_weights_() + + training_time = time.time() - training_start + + iteration_time = sampling_time + training_time + total_time += iteration_time + training_tds = torch.stack(training_tds) + + # More logs + if cfg.logger.backend: + log_training( + logger, + training_tds, + tensordict_data, + sampling_time, + training_time, + total_time, + i, + current_frames, + total_frames, + step=i, + ) + + if ( + cfg.eval.evaluation_episodes > 0 + and i % cfg.eval.evaluation_interval == 0 + and cfg.logger.backend + ): + evaluation_start = time.time() + with torch.no_grad() and set_exploration_type(ExplorationType.MEAN): + env_test.frames = [] + rollouts = env_test.rollout( + max_steps=cfg.env.max_steps, + policy=qnet, + callback=rendering_callback, + auto_cast_to_device=True, + break_when_any_done=False, + # We are running vectorized evaluation we do not want it to stop when just one env is done + ) + + evaluation_time = time.time() - evaluation_start + + log_evaluation(logger, rollouts, env_test, evaluation_time, step=i) + + if cfg.logger.backend == "wandb": + logger.experiment.log({}, commit=True) + sampling_start = time.time() + + +if __name__ == "__main__": + train() diff --git a/examples/multiagent/qmix_vdn.yaml b/examples/multiagent/qmix_vdn.yaml new file mode 100644 index 00000000000..a78b3987ffb --- /dev/null +++ b/examples/multiagent/qmix_vdn.yaml @@ -0,0 +1,39 @@ +seed: 0 + +env: + max_steps: 100 + scenario_name: "balance" + scenario: + n_agents: 3 + device: ??? # These values will be populated dynamically + vmas_envs: ??? + +model: + shared_parameters: True + +collector: + frames_per_batch: 60_000 # Frames sampled each sampling iteration + n_iters: 500 # Number of sampling/training iterations + total_frames: ??? + +buffer: + memory_size: ??? + +loss: + mixer_type: "qmix" # or "vdn" + gamma: 0.9 + tau: 0.005 # For target net + +train: + num_epochs: 45 # optimization steps per batch of data collected + minibatch_size: 4096 # size of minibatches used in each epoch + lr: 5e-5 + max_grad_norm: 40.0 + device: ??? + +eval: + evaluation_interval: 20 + evaluation_episodes: 200 + +logger: + backend: wandb # Delete to remove logging diff --git a/examples/multiagent/utils/__init__.py b/examples/multiagent/utils/__init__.py new file mode 100644 index 00000000000..7bec24cb17b --- /dev/null +++ b/examples/multiagent/utils/__init__.py @@ -0,0 +1,4 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. diff --git a/examples/multiagent/utils/logging.py b/examples/multiagent/utils/logging.py new file mode 100644 index 00000000000..03276329422 --- /dev/null +++ b/examples/multiagent/utils/logging.py @@ -0,0 +1,147 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. +import os + +import numpy as np +import torch +import wandb +from tensordict import TensorDictBase +from torchrl.envs.libs.vmas import VmasEnv +from torchrl.record.loggers import generate_exp_name, get_logger, Logger +from torchrl.record.loggers.wandb import WandbLogger + + +def init_logging(cfg, model_name: str): + logger = get_logger( + logger_type=cfg.logger.backend, + logger_name=os.getcwd(), + experiment_name=generate_exp_name(cfg.env.scenario_name, model_name), + wandb_kwargs={ + "group": model_name, + "project": f"torchrl_{cfg.env.scenario_name}", + }, + ) + logger.log_hparams(cfg) + return logger + + +def log_training( + logger: Logger, + training_td: TensorDictBase, + sampling_td: TensorDictBase, + sampling_time: float, + training_time: float, + total_time: float, + iteration: int, + current_frames: int, + total_frames: int, + step: int, +): + if ("next", "agents", "reward") not in sampling_td.keys(True, True): + sampling_td.set( + ("next", "agents", "reward"), + sampling_td.get(("next", "reward")) + .expand(sampling_td.get("agents").shape) + .unsqueeze(-1), + ) + if ("next", "agents", "episode_reward") not in sampling_td.keys(True, True): + sampling_td.set( + ("next", "agents", "episode_reward"), + sampling_td.get(("next", "episode_reward")) + .expand(sampling_td.get("agents").shape) + .unsqueeze(-1), + ) + + to_log = { + f"train/learner/{key}": value.mean().item() + for key, value in training_td.items() + } + + if "info" in sampling_td.get("agents").keys(): + to_log.update( + { + f"train/info/{key}": value.mean().item() + for key, value in sampling_td.get(("agents", "info")).items() + } + ) + + reward = sampling_td.get(("next", "agents", "reward")).mean(-2) # Mean over agents + done = sampling_td.get(("next", "done")) + if done.ndim > reward.ndim: + done = done[..., 0, :] # Remove expanded agent dim + episode_reward = sampling_td.get(("next", "agents", "episode_reward")).mean(-2)[ + done + ] + to_log.update( + { + "train/reward/reward_min": reward.min().item(), + "train/reward/reward_mean": reward.mean().item(), + "train/reward/reward_max": reward.max().item(), + "train/reward/episode_reward_min": episode_reward.min().item(), + "train/reward/episode_reward_mean": episode_reward.mean().item(), + "train/reward/episode_reward_max": episode_reward.max().item(), + "train/sampling_time": sampling_time, + "train/training_time": training_time, + "train/iteration_time": training_time + sampling_time, + "train/total_time": total_time, + "train/training_iteration": iteration, + "train/current_frames": current_frames, + "train/total_frames": total_frames, + } + ) + if isinstance(logger, WandbLogger): + logger.experiment.log(to_log, commit=False) + else: + for key, value in to_log.items(): + logger.log_scalar(key.replace("/", "_"), value, step=step) + + return to_log + + +def log_evaluation( + logger: WandbLogger, + rollouts: TensorDictBase, + env_test: VmasEnv, + evaluation_time: float, + step: int, +): + rollouts = list(rollouts.unbind(0)) + for k, r in enumerate(rollouts): + next_done = r.get(("next", "done")).sum( + tuple(range(r.batch_dims, r.get(("next", "done")).ndim)), + dtype=torch.bool, + ) + done_index = next_done.nonzero(as_tuple=True)[0][ + 0 + ] # First done index for this traj + rollouts[k] = r[: done_index + 1] + + rewards = [td.get(("next", "agents", "reward")).sum(0).mean() for td in rollouts] + to_log = { + "eval/episode_reward_min": min(rewards), + "eval/episode_reward_max": max(rewards), + "eval/episode_reward_mean": sum(rewards) / len(rollouts), + "eval/episode_len_mean": sum([td.batch_size[0] for td in rollouts]) + / len(rollouts), + "eval/evaluation_time": evaluation_time, + } + + vid = torch.tensor( + np.transpose(env_test.frames[: rollouts[0].batch_size[0]], (0, 3, 1, 2)), + dtype=torch.uint8, + ).unsqueeze(0) + + if isinstance(logger, WandbLogger): + logger.experiment.log(to_log, commit=False) + logger.experiment.log( + { + "eval/video": wandb.Video(vid, fps=1 / env_test.world.dt, format="mp4"), + }, + commit=False, + ) + else: + for key, value in to_log.items(): + logger.log_scalar(key.replace("/", "_"), value, step=step) + logger.log_video("eval_video", vid, step=step) From 970f65e8fca0b716ff1b94c2e415cfa9795edbfa Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Wed, 26 Jul 2023 10:58:30 +0100 Subject: [PATCH 013/148] [BugFix] Reward sum custom key (#1413) Signed-off-by: Matteo Bettini --- torchrl/envs/transforms/transforms.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index 0f17c37b5f4..7156c4cf571 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -2212,7 +2212,6 @@ def unfolding(self, tensordict: TensorDictBase) -> TensorDictBase: # If so, we must add an offset data = tensordict.get(in_key) if isinstance(in_key, tuple) and in_key[0] == "next": - # let's get the out_key we have already processed prev_out_key = dict(zip(self.in_keys, self.out_keys))[in_key[1]] prev_val = tensordict.get(prev_out_key) @@ -3416,7 +3415,11 @@ def reset(self, tensordict: TensorDictBase) -> TensorDictBase: dtype=torch.bool, device=tensordict.device, ) + if _reset.any(): + _reset = _reset.sum( + tuple(range(tensordict.batch_dims, _reset.ndim)), dtype=torch.bool + ) reward_key = self.parent.reward_key if self.parent else "reward" for in_key, out_key in zip(self.in_keys, self.out_keys): if out_key in tensordict.keys(True, True): @@ -3490,7 +3493,7 @@ def transform_observation_spec(self, observation_spec: TensorSpec) -> TensorSpec dtype=reward_spec.dtype, shape=reward_spec.shape, ) - episode_specs.update({"episode_reward": episode_spec}) + episode_specs.update({self.out_keys[0]: episode_spec}) # Update observation_spec with episode_specs if not isinstance(observation_spec, CompositeSpec): From 1b7980cf874a3d7e58e3d35f4d2e9fe3299498e8 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 26 Jul 2023 11:39:48 +0100 Subject: [PATCH 014/148] [Refactor] Use masking in collectors (#1412) --- torchrl/collectors/collectors.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/torchrl/collectors/collectors.py b/torchrl/collectors/collectors.py index 1d55113a2bb..de5b4c9a075 100644 --- a/torchrl/collectors/collectors.py +++ b/torchrl/collectors/collectors.py @@ -824,9 +824,9 @@ def _step_and_maybe_reset(self) -> None: # better cloning here than when passing the td for stacking # cloning is necessary to avoid modifying dones in-place self._tensordict = self._tensordict.clone() - self._tensordict.get_sub_tensordict(traj_done_or_terminated).update( - td_reset[traj_done_or_terminated] - ) + self._tensordict[traj_done_or_terminated] = td_reset[ + traj_done_or_terminated + ] else: self._tensordict.update(td_reset) @@ -861,7 +861,6 @@ def rollout(self) -> TensorDictBase: else: self.policy(self._tensordict) self.env.step(self._tensordict) - # we must clone all the values, since the step / traj_id updates are done in-place tensordicts.append(self._tensordict.to(self.storing_device)) From 2f24e4f07ea31026c5015027ed15e6939a7e6db7 Mon Sep 17 00:00:00 2001 From: Albert Bou Date: Wed, 26 Jul 2023 16:12:51 +0200 Subject: [PATCH 015/148] [BugFix] Pickable buffer (#1410) --- test/test_rb.py | 12 +++++++++++ torchrl/data/replay_buffers/replay_buffers.py | 21 +++++++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/test/test_rb.py b/test/test_rb.py index 7db3c386beb..36158d8a69e 100644 --- a/test/test_rb.py +++ b/test/test_rb.py @@ -5,6 +5,7 @@ import argparse import importlib +import pickle import sys from functools import partial from unittest import mock @@ -242,6 +243,17 @@ def test_index(self, rb_type, sampler, writer, storage, size): b = b.all() assert b + def test_pickable(self, rb_type, sampler, writer, storage, size): + + rb = self._get_rb( + rb_type=rb_type, sampler=sampler, writer=writer, storage=storage, size=size + ) + serialized = pickle.dumps(rb) + rb2 = pickle.loads(serialized) + assert rb.__dict__.keys() == rb2.__dict__.keys() + for key in sorted(rb.__dict__.keys()): + assert isinstance(rb.__dict__[key], type(rb2.__dict__[key])) + @pytest.mark.parametrize("storage_type", [TensorStorage]) class TestStorages: diff --git a/torchrl/data/replay_buffers/replay_buffers.py b/torchrl/data/replay_buffers/replay_buffers.py index 3369e2004bc..d9ba666cc5b 100644 --- a/torchrl/data/replay_buffers/replay_buffers.py +++ b/torchrl/data/replay_buffers/replay_buffers.py @@ -410,6 +410,27 @@ def __iter__(self): data = self.sample() yield data + def __getstate__(self) -> Dict[str, Any]: + state = self.__dict__.copy() + _replay_lock = state.pop("_replay_lock", None) + _futures_lock = state.pop("_futures_lock", None) + if _replay_lock is not None: + state["_replay_lock_placeholder"] = None + if _futures_lock is not None: + state["_futures_lock_placeholder"] = None + return state + + def __setstate__(self, state: Dict[str, Any]): + if "_replay_lock_placeholder" in state: + state.pop("_replay_lock_placeholder") + _replay_lock = threading.RLock() + state["_replay_lock"] = _replay_lock + if "_futures_lock_placeholder" in state: + state.pop("_futures_lock_placeholder") + _futures_lock = threading.RLock() + state["_futures_lock"] = _futures_lock + self.__dict__.update(state) + class PrioritizedReplayBuffer(ReplayBuffer): """Prioritized replay buffer. From 98b2cca800c5f2423c0a324f96116880a7de1859 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Wed, 26 Jul 2023 20:34:45 +0100 Subject: [PATCH 016/148] [Tutorial] Multiagent PPO tutorial (#1385) Signed-off-by: Matteo Bettini Co-authored-by: Vincent Moens --- .gitignore | 5 + docs/source/index.rst | 1 + tutorials/sphinx-tutorials/multiagent_ppo.py | 797 +++++++++++++++++++ 3 files changed, 803 insertions(+) create mode 100644 tutorials/sphinx-tutorials/multiagent_ppo.py diff --git a/.gitignore b/.gitignore index 6ce8f3e06d0..563891baa98 100644 --- a/.gitignore +++ b/.gitignore @@ -70,6 +70,11 @@ instance/ # Sphinx documentation docs/_build/ +docs/build/ +docs/source/gen_modules +docs/source/reference/generated +docs/source/tutorials +docs/src # PyBuilder .pybuilder/ diff --git a/docs/source/index.rst b/docs/source/index.rst index 75af9a95f64..91906abb857 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -49,6 +49,7 @@ Intermediate .. toctree:: :maxdepth: 1 + tutorials/multiagent_ppo tutorials/torchrl_envs tutorials/pretrained_models tutorials/dqn_with_rnn diff --git a/tutorials/sphinx-tutorials/multiagent_ppo.py b/tutorials/sphinx-tutorials/multiagent_ppo.py new file mode 100644 index 00000000000..61eb2522dcb --- /dev/null +++ b/tutorials/sphinx-tutorials/multiagent_ppo.py @@ -0,0 +1,797 @@ +# -*- coding: utf-8 -*- +""" +Multi-Agent Reinforcement Learning (PPO) with TorchRL Tutorial +=============================================================== +**Author**: `Matteo Bettini `_ + +This tutorial demonstrates how to use PyTorch and :py:mod:`torchrl` to +solve a Multi-Agent Reinforcement Learning (MARL) problem. + +A code-only version of this tutorial is available in the +`TorchRL examples `__, +alongside other simple scripts for many MARL algorithms (QMIX, MADDPG, IQL). + +For ease of use, this tutorial will follow the general structure of the already available +`single agent PPO tutorial `__. +It is suggested but not mandatory to get familiar with that prior to starting this tutorial. + +In this tutorial, we will use the *Navigation* environment from +`VMAS `__, +a multi-robot simulator, also +based on PyTorch, that runs parallel batched simulation on device. + +In the *Navigation* environment, +we need to train multiple robots (spawned at random positions) +to navigate to their goals (also at random positions), while +using `LIDAR sensors `__ to avoid collisions among each other. + +.. figure:: https://pytorch.s3.amazonaws.com/torchrl/github-artifacts/img/navigation.gif + :alt: Navigation + + Multi-agent *Navigation* scenario + +Key learnings: + +- How to create a multi-agent environment in TorchRL, how its specs work, and how it integrates with the library; +- How you use GPU vectorized environments in TorchRL; +- How to create different multi-agent network architectures in TorchRL (e.g., using parameter sharing, centralised critic) +- How we can use :class:`tensordict.TensorDict` to carry multi-agent data; +- How we can tie all the library components (collectors, modules, replay buffers, and losses) in a multi-agent MAPPO/IPPO training loop. + +""" + +###################################################################### +# If you are running this in Google Colab, make sure you install the following dependencies: +# +# .. code-block:: bash +# +# !pip3 install torchrl +# !pip3 install vmas==1.2.11 +# !pip3 install tqdm +# +# Proximal Policy Optimization (PPO) is a policy-gradient algorithm where a +# batch of data is being collected and directly consumed to train the policy to maximise +# the expected return given some proximality constraints. You can think of it +# as a sophisticated version of `REINFORCE `_, +# the foundational policy-optimization algorithm. For more information, see the +# `Proximal Policy Optimization Algorithms `_ paper. +# +# This type of algorithms is usually trained *on-policy*. This means that, at every learning iteration, we have a +# **sampling** and a **training** phase. In the **sampling** phase of iteration :math:`t`, rollouts are collected +# form agents' interactions in the environment using the current policies :math:`\mathbf{\pi}_t`. +# In the **training** phase, all the collected rollouts are immediately fed to the training process to perform +# backpropagation. This leads to updated policies which are then used again for sampling. +# The execution of this process in a loop constitutes *on-policy learning*. +# +# .. figure:: https://pytorch.s3.amazonaws.com/torchrl/github-artifacts/img/on_policy_vmas.png +# :alt: On-policy learning +# +# On-policy learning +# +# +# In the training phase of the PPO algorithm, a *critic* is used to estimate the goodness of the actions +# taken by the policy. The critic learns to approximate the value (mean discounted return) of a specific state. +# The PPO loss then compares the actual return obtained by the policy to the one estimated by the critic to determine +# the advantage of the action taken and guide the policy optimization. +# +# In multi-agent settings, things are a bit different. We now have multiple policies :math:`\mathbf{\pi}`, +# one for each agent. Policies are typically local and decentralised. This means that +# the policy for a single agent will output an action for that agent based only on its observation. +# In the MARL literature, this is referred to as **decentralised execution**. +# On the other hand, different formulations exist for the critic, mainly: +# +# - In `MAPPO `_ the critic is centralised and takes as input the global state +# of the system. This can be a global observation or simply the concatenation of the agents' observation. MAPPO +# can be used in contexts where **centralised training** is performed as it needs access to global information. +# - In `IPPO `_ the critic takes as input just the observation of the respective agent, +# exactly like the policy. This allows **decentralised training** as both the critic and the policy will only need local +# information to compute their outputs. +# +# Centralised critics help overcome the non-stationary of multiple agents learning concurrently, but, +# on the other hand, they may be impacted by their large input space. +# In this tutorial, we will be able to train both formulations, and we will also discuss how +# parameter-sharing (the practice of sharing the network parameters across the agents) impacts each. +# +# This tutorial is structured as follows: +# +# 1. First, we will define a set of hyperparameters we will be using. +# +# 2. Next, we will create a vectorized multi-agent environment, using TorchRL's +# wrapper for the VMAS simulator. +# +# 3. Next, we will design the policy and the critic networks, discussing the impact of the various choices on +# parameter sharing and critic centralisation. +# +# 4. Next, we will create the sampling collector and the replay buffer. +# +# 5. Finally, we will run our training loop and analyse the results. +# +# If you are running this in Colab or in a machine with a GUI, you will also have the option +# to render and visualise your own trained policy prior and after training. +# +# Let's import our dependencies +# + +# Torch +import torch + +# Tensordict modules +from tensordict.nn import TensorDictModule +from tensordict.nn.distributions import NormalParamExtractor + +# Data collection +from torchrl.collectors import SyncDataCollector +from torchrl.data.replay_buffers import ReplayBuffer +from torchrl.data.replay_buffers.samplers import SamplerWithoutReplacement +from torchrl.data.replay_buffers.storages import LazyTensorStorage + +# Env +from torchrl.envs import RewardSum, TransformedEnv +from torchrl.envs.libs.vmas import VmasEnv +from torchrl.envs.utils import check_env_specs + +# Multi-agent network +from torchrl.modules import MultiAgentMLP, ProbabilisticActor, TanhNormal + +# Loss +from torchrl.objectives import ClipPPOLoss, ValueEstimators + +# Utils +torch.manual_seed(0) +from matplotlib import pyplot as plt +from tqdm import tqdm + + +###################################################################### +# Define Hyperparameters +# ---------------------- +# +# We set the hyperparameters for our tutorial. +# Depending on the resources +# available, one may choose to execute the policy and the simulator on GPU or on another +# device. +# You can tune some of these values to adjust the computational requirements. +# + +# Devices +device = "cpu" if not torch.has_cuda else "cuda:0" # The divice where learning is run +vmas_device = device # The device where the simulator is run (VMAS can run on GPU) + +# Sampling +frames_per_batch = 6_000 # Number of team frames collected per training iteration +n_iters = 10 # Number of sampling and training iterations +total_frames = frames_per_batch * n_iters + +# Training +num_epochs = 30 # Number of optimization steps per training iteration +minibatch_size = 400 # Size of the mini-batches in each optimization step +lr = 3e-4 # Learning rate +max_grad_norm = 1.0 # Maximum norm for the gradients + +# PPO +clip_epsilon = 0.2 # clip value for PPO loss +gamma = 0.9 # discount factor +lmbda = 0.9 # lambda for generalised advantage estimation +entropy_eps = 1e-4 # coefficient of the entropy term in the PPO loss + +###################################################################### +# Environment +# ----------- +# +# Multi-agent environments simulate multiple agents interacting with the world. +# TorchRL API allows integrating various types of multi-agent environment flavours. +# Some examples include environments with shared or individual agent rewards, done flags, and observations. +# For more information on how the multi-agent environments API works in TorchRL, you can check out the dedicated +# `doc section `_. +# +# The VMAS simulator, in particular, models agents with individual rewards, info, observations, and actions, but +# with a collective done flag. +# Furthermore, it uses *vectorization* to perform simulation in a batch. +# This means that all its state and physics +# are PyTorch tensors with a first dimension representing the number of parallel environments in a batch. +# This allows leveraging the Single Instruction Multiple Data (SIMD) paradigm of GPUs and significantly +# speed up parallel computation by leveraging parallelisation in GPU warps. It also means +# that, when using it in TorchRL, both simulation and training can be run on-device, without ever passing +# data to the CPU. +# +# The multi-agent task we will solve today is *Navigation* (see animated figure above). +# In *Navigation*, randomly spawned agents +# (circles with surrounding dots) need to navigate +# to randomly spawned goals (smaller circles). +# Agents need to use LIDARs (dots around them) to +# avoid colliding into each other. +# Agents act in a 2D continuous world with drag and elastic collisions. +# Their actions are 2D continuous forces which determine their acceleration. +# The reward is composed of three terms: a collision penalisation, a reward based on the distance to the goal, and a +# final shared reward given when all agents reach their goal. +# The distance-based term is computed as the difference in the relative distance +# between an agent and its goal over two consecutive timesteps. +# Each agent observes its position, +# velocity, lidar readings, and relative position to its goal. +# +# We will now instantiate the environment. +# For this tutorial, we will limit the episodes to ``max_steps``, after which the done flag is set. This is +# functionality is already provided in the VMAS simulator but the TorchRL :class:`~.envs.transforms.StepCount` +# transform could alternatively be used. +# We will also use ``num_vmas_envs`` vectorized environments, to leverage batch simulation. +# +# + +max_steps = 100 # Episode steps before done +num_vmas_envs = ( + frames_per_batch // max_steps +) # Number of vectorized envs. frames_per_batch should be divisible by this number +scenario_name = "navigation" +n_agents = 3 + +env = VmasEnv( + scenario=scenario_name, + num_envs=num_vmas_envs, + continuous_actions=True, # VMAS supports both continuous and discrete actions + max_steps=max_steps, + device=vmas_device, + # Scenario kwargs + n_agents=n_agents, # These are custom kwargs that change for each VMAS scenario, see the VMAS repo to know more. +) + +###################################################################### +# The environment is not only defined by its simulator and transforms, but also +# by a series of metadata that describe what can be expected during its +# execution. +# For efficiency purposes, TorchRL is quite stringent when it comes to +# environment specs, but you can easily check that your environment specs are +# adequate. +# In our example, the :class:`~.envs.libs.vmas.VmasEnv` takes care of setting the proper specs for your env so +# you should not have to care about this. +# +# There are four specs to look at: +# +# - ``action_spec`` defines the action space; +# - ``reward_spec`` defines the reward domain; +# - ``done_spec`` defines the done domain; +# - ``observation_spec`` which defines the domain of all other outputs from environmnet steps; +# +# + +print("action_spec:", env.action_spec) +print("reward_spec:", env.reward_spec) +print("done_spec:", env.done_spec) +print("observation_spec:", env.observation_spec) + + +###################################################################### +# Using the commands just shown we can access the domain of each value. +# Doing this we can see that all specs apart from done have a leading shape ``(num_vmas_envs, n_agents)``. +# This represents the fact that those values will be present for each agent in each individual environment. +# The done spec, on the other hand, has leading shape ``num_vmas_envs``, representing that done is shared among +# agents. +# +# TorchRL has a way to keep track of which MARL specs are shared and which are not. +# In fact, specs that have the additional agent dimension +# (i.e., they vary for each agent) will be contained in a inner "agents" key. +# +# To access the full structure of the specs we can use +# + +print("full_action_spec:", env.input_spec["_action_spec"]) +print("full_reward_spec:", env.output_spec["_reward_spec"]) +print("full_done_spec:", env.output_spec["_done_spec"]) + +###################################################################### +# As you can see the reward and action spec present the "agent" key, +# meaning that entries in tensordicts belonging to those specs will be nested in an "agents" tensordict, +# grouping all per-agent values. +# +# To quickly access the key for each of these values in tensordicts, we can simply ask the environment for the +# respective key, and +# we will immediately understand which are per-agent and which shared. +# This info will be useful in order to tell all other TorchRL components where to find each value +# + +print("action_key:", env.action_key) +print("reward_key:", env.reward_key) +print("done_key:", env.done_key) + +###################################################################### +# To tie it all together, we can see that passing these keys to the full specs gives us the leaf domains +# + +assert env.action_spec == env.input_spec["_action_spec"][env.action_key] +assert env.reward_spec == env.output_spec["_reward_spec"][env.reward_key] +assert env.done_spec == env.output_spec["_done_spec"][env.done_key] + +###################################################################### +# Transforms +# ~~~~~~~~~~ +# +# We can append any TorchRL transform we need to our enviornment. +# These will modify its input/output in some desired way. +# We stress that, in multi-agent contexts, it is paramount to provide explicitly the keys to modify. +# +# For example, in this case, we will instantiate a ``RewardSum`` transform which will sum rewards over the episode. +# We will tell this transform where to find the reward key and where to write the summed episode reward. +# The transformed environment will inherit +# the device and meta-data of the wrapped environment, and transform these depending on the sequence +# of transforms it contains. +# + + +env = TransformedEnv( + env, + RewardSum(in_keys=[env.reward_key], out_keys=[("agents", "episode_reward")]), +) + + +###################################################################### +# the :func:`check_env_specs` function runs a small rollout and compares its output against the environment +# specs. If no error is raised, we can be confident that the specs are properly defined: +# +check_env_specs(env) + +###################################################################### +# Rollout +# ~~~~~~~ +# +# For fun, let's see what a simple random rollout looks like. You can +# call `env.rollout(n_steps)` and get an overview of what the environment inputs +# and outputs look like. Actions will automatically be drawn at random from the action spec +# domain. +# +n_rollout_steps = 5 +rollout = env.rollout(n_rollout_steps) +print("rollout of three steps:", rollout) +print("Shape of the rollout TensorDict:", rollout.batch_size) +###################################################################### +# We can see that our rollout has ``batch_size`` of ``(num_vmas_envs, n_rollout_steps)``. +# This means that all the tensors in it will have those leading dimensions. +# +# Looking more in depth, we can see that the output tensordict can be divided in the following way: +# +# - *In the root* (accessible by running ``rollout.exclude("next")`` ) we will find all the keys that are available +# after a reset is called at the first timestep. We can see their evolution through the rollout steps by indexing +# the ``n_rollout_steps`` dimension. Among these keys, we will find the ones that are different for each agent +# in the ``rollout["agents"]`` tensordict, which will have batch size ``(num_vmas_envs, n_rollout_steps, n_agents)`` +# signifying that it is storing the additional agent dimension. The ones outside this agent tensordict +# will be the shared ones (in this case only done). +# - *In the next* (accessible by running ``rollout.get("next")`` ). We will find the same structure as the root, +# but for keys that are available only after a step. +# +# In TorchRL the convention is that done and observations will be present in both root and next (as these are +# available both at reset time and after a step). Action will only be available in root (as there is no action +# resulting from a step) and reward will only be available in next (as there is no reward at reset time). +# This structure follows the one in **Reinforcement Learning: An Introduction (Sutton and Barto)** where root represents data at time :math:`t` and +# next represents data at time :math:`t+1` of a world step. +# +# +# Render a random rollout +# ~~~~~~~~~~~~~~~~~~~~~~~ +# +# If you are on Google Colab, or on a machine with OpenGL and a GUI, you can actually render a random rollout. +# This will give you an idea of what a random policy will achieve in this task, in order to compare it +# with the policy you will train yourself! +# +# To render a rollout, follow the instructions in the *Render* section at the end of this tutorial +# and just remove the line ``policy=policy`` from ``env.rollout()`` . +# +# +# Policy +# ------ +# +# PPO utilises a stochastic policy to handle exploration. This means that our +# neural network will have to output the parameters of a distribution, rather +# than a single value corresponding to the action taken. +# +# As the data is continuous, we use a Tanh-Normal distribution to respect the +# action space boundaries. TorchRL provides such distribution, and the only +# thing we need to care about is to build a neural network that outputs the +# right number of parameters. +# +# In this case, each agent's action will be represented by a 2-dimensional independent normal distribution. +# For this, our neural network will have to output a mean and a standard deviation for each action. +# Each agent will thus have ``2 * n_actions_per_agents`` outputs. +# +# Another important decision we need to make is whether we want our agents to **share the policy parameters**. +# On the one hand, sharing parameters means that they will all share the same policy, which will allow them to benefit from +# each other's experiences. This will also result in faster training. +# On the other hand, it will make them behaviorally *homogenous*, as they will in fact share the same model. +# For this example, we will enable sharing as we do not mind the homogeneity and can benefit from the computational +# speed, but it is important to always think about this decision in your own problems! +# +# We design the policy in three steps. +# +# **First**: define a neural network ``n_obs_per_agent`` -> ``2 * n_actions_per_agents`` +# +# For this we use the ``MultiAgentMLP``, a TorchRL module made exactly for +# multiple agents, with much customisation available. +# + +share_parameters_policy = True + +policy_net = torch.nn.Sequential( + MultiAgentMLP( + n_agent_inputs=env.observation_spec["agents", "observation"].shape[ + -1 + ], # n_obs_per_agent + n_agent_outputs=2 * env.action_spec.shape[-1], # 2 * n_actions_per_agents + n_agents=env.n_agents, + centralised=False, # the policies are decentralised (ie each agent will act from its observation) + share_params=share_parameters_policy, + device=device, + depth=2, + num_cells=256, + activation_class=torch.nn.Tanh, + ), + NormalParamExtractor(), # this will just separate the last dimension into two outputs: a loc and a non-negative scale +) + +###################################################################### +# **Second**: wrap the neural network in a :class:`TensorDictModule` +# +# This is simply a module that will read the ``in_keys`` from a tensordict, feed them to the +# neural networks, and write the +# outputs in-place at the ``out_keys``. +# +# Note that we use ``("agents", ...)`` keys as these keys are denoting data with the +# additional ``n_agents`` dimension. +# +policy_module = TensorDictModule( + policy_net, + in_keys=[("agents", "observation")], + out_keys=[("agents", "loc"), ("agents", "scale")], +) + +###################################################################### +# **Third**: wrap the :class:`TensorDictModule` in a :class:`ProbabilisticActor` +# +# We now need to build a distribution out of the location and scale of our +# normal distribution. To do so, we instruct the :class:`ProbabilisticActor` +# class to build a :class:`TanhNormal` out of the location and scale +# parameters. We also provide the minimum and maximum values of this +# distribution, which we gather from the environment specs. +# +# The name of the ``in_keys`` (and hence the name of the ``out_keys`` from +# the :class:`TensorDictModule` above) has to end with the +# :class:`TanhNormal` distribution constructor keyword arguments (loc and scale). +# + +policy = ProbabilisticActor( + module=policy_module, + spec=env.unbatched_action_spec, + in_keys=[("agents", "loc"), ("agents", "scale")], + out_keys=[env.action_key], + distribution_class=TanhNormal, + distribution_kwargs={ + "min": env.unbatched_action_spec[env.action_key].space.minimum, + "max": env.unbatched_action_spec[env.action_key].space.maximum, + }, + return_log_prob=True, + log_prob_key=("agents", "sample_log_prob"), +) # we'll need the log-prob for the PPO loss + +###################################################################### +# Critic network +# -------------- +# +# The critic network is a crucial component of the PPO algorithm, even though it +# isn't used at sampling time. This module will read the observations and +# return the corresponding value estimates. +# +# As before, one should think carefully about the decision of **sharing the critic parameters**. +# In general, parameter sharing will grant faster training convergence, but there are a few important +# considerations to be made: +# +# - Sharing is not recommended when agents have different reward functions, as the critics will need to learn +# to assign different values to the same state (e.g., in mixed cooperative-competitive settings). +# - In decentralised training settings, sharing cannot be performed without additional infrastructure to +# synchronise parameters. +# +# In all other cases where the reward function (to be differentiated from the reward) is the same for all agents +# (as in the current scenario), +# sharing can provide improved performance. This can come at the cost of homogeneity in the agent strategies. +# In general, the best way to know which choice is preferable is to quickly experiment both options. +# +# Here is also where we have to choose between **MAPPO and IPPO**: +# +# - With MAPPO, we will obtain a central critic with full-observability +# (i.e., it will take all the concatenated agent observations as input). +# We can do this because we are in a simulator +# and training is centralised. +# - With IPPO, we will have a local decentralised critic, just like the policy. +# +# In any case, the critic output will have shape ``(..., n_agents, 1)``. +# If the critic is centralised and shared, +# all the values along the ``n_agents`` dimension will be identical. +# + +share_parameters_critic = True +mappo = True # IPPO if False + +critic_net = MultiAgentMLP( + n_agent_inputs=env.observation_spec["agents", "observation"].shape[-1], + n_agent_outputs=1, # 1 value per agent + n_agents=env.n_agents, + centralised=mappo, + share_params=share_parameters_critic, + device=device, + depth=2, + num_cells=256, + activation_class=torch.nn.Tanh, +) + +critic = TensorDictModule( + module=critic_net, + in_keys=[("agents", "observation")], + out_keys=[("agents", "state_value")], +) + +###################################################################### +# Let us try our policy and critic modules. As pointed earlier, the usage of +# :class:`TensorDictModule` makes it possible to directly read the output +# of the environment to run these modules, as they know what information to read +# and where to write it: +# +# **From this point on, the multi-agent-specific components have been instantiated, and we will simply use the same +# components as in single-agent learning. Isn't this fantastic?** +# +print("Running policy:", policy(env.reset())) +print("Running value:", critic(env.reset())) + +###################################################################### +# Data collector +# -------------- +# +# TorchRL provides a set of data collector classes. Briefly, these +# classes execute three operations: reset an environment, compute an action +# using the policy and the latest observation, execute a step in the environment, and repeat +# the last two steps until the environment signals a stop (or reaches a done +# state). +# +# We will use the simplest possible data collector, which has the same output as an environment rollout, +# with the only difference that it will auto reset done states until the desired frames are collected. +# +collector = SyncDataCollector( + env, + policy, + device=vmas_device, + storing_device=device, + frames_per_batch=frames_per_batch, + total_frames=total_frames, +) + +###################################################################### +# Replay buffer +# ------------- +# +# Replay buffers are a common building piece of off-policy RL algorithms. +# In on-policy contexts, a replay buffer is refilled every time a batch of +# data is collected, and its data is repeatedly consumed for a certain number +# of epochs. +# +# Using a replay buffer for PPO is not mandatory and we could simply +# use the collected data online, but using these classes +# makes it easy for us to build the inner training loop in a reproducible way. +# + +replay_buffer = ReplayBuffer( + storage=LazyTensorStorage( + frames_per_batch, device=device + ), # We store the frames_per_batch collected at each iteration + sampler=SamplerWithoutReplacement(), + batch_size=minibatch_size, # We will sample minibatches of this size +) + +###################################################################### +# Loss function +# ------------- +# +# The PPO loss can be directly imported from TorchRL for convenience using the +# :class:`~.objectives.ClipPPOLoss` class. This is the easiest way of utilising PPO: +# it hides away the mathematical operations of PPO and the control flow that +# goes with it. +# +# PPO requires some "advantage estimation" to be computed. In short, an advantage +# is a value that reflects an expectancy over the return value while dealing with +# the bias / variance tradeoff. +# To compute the advantage, one just needs to (1) build the advantage module, which +# utilises our value operator, and (2) pass each batch of data through it before each +# epoch. +# The GAE module will update the input :class:`TensorDict` with new ``"advantage"`` and +# ``"value_target"`` entries. +# The ``"value_target"`` is a gradient-free tensor that represents the empirical +# value that the value network should represent with the input observation. +# Both of these will be used by :class:`ClipPPOLoss` to +# return the policy and value losses. +# + +loss_module = ClipPPOLoss( + actor=policy, + critic=critic, + clip_epsilon=clip_epsilon, + entropy_coef=entropy_eps, + normalize_advantage=False, # Important to avoid normalizing across the agent dimension +) +loss_module.set_keys( # We have to tell the loss where to find the keys + reward=env.reward_key, + action=env.action_key, + sample_log_prob=("agents", "sample_log_prob"), + value=("agents", "state_value"), +) + + +loss_module.make_value_estimator( + ValueEstimators.GAE, gamma=gamma, lmbda=lmbda +) # We build GAE +GAE = loss_module.value_estimator + +optim = torch.optim.Adam(loss_module.parameters(), lr) + +###################################################################### +# Training loop +# ------------- +# We now have all the pieces needed to code our training loop. +# The steps include: +# +# * Collect data +# * Compute advantage +# * Loop over epochs +# * Loop over minibatches to compute loss values +# * Back propagate +# * Optimise +# * Repeat +# * Repeat +# * Repeat +# * Repeat +# +# + +pbar = tqdm(total=n_iters, desc="episode_reward_mean = 0") + +episode_reward_mean_list = [] +for tensordict_data in collector: + tensordict_data.set( + ("next", "done"), + tensordict_data.get(("next", "done")) + .unsqueeze(-1) + .expand(tensordict_data.get(("next", env.reward_key)).shape), + ) # We need to expand the done to match the reward shape (this is expected by the value estimator) + + with torch.no_grad(): + GAE( + tensordict_data, + params=loss_module.critic_params, + target_params=loss_module.target_critic_params, + ) # Compute GAE and add it to the data + + data_view = tensordict_data.reshape(-1) # Flatten the batch size to shuffle data + replay_buffer.extend(data_view) + + for _ in range(num_epochs): + for _ in range(frames_per_batch // minibatch_size): + subdata = replay_buffer.sample() + loss_vals = loss_module(subdata) + + loss_value = ( + loss_vals["loss_objective"] + + loss_vals["loss_critic"] + + loss_vals["loss_entropy"] + ) + + loss_value.backward() + + torch.nn.utils.clip_grad_norm_( + loss_module.parameters(), max_grad_norm + ) # Optional + + optim.step() + optim.zero_grad() + + collector.update_policy_weights_() + + # Logging + done = tensordict_data.get(("next", "done")) + episode_reward_mean = ( + tensordict_data.get(("next", "agents", "episode_reward"))[done].mean().item() + ) + episode_reward_mean_list.append(episode_reward_mean) + pbar.set_description(f"episode_reward_mean = {episode_reward_mean}", refresh=False) + pbar.update() + +###################################################################### +# Results +# ------- +# +# Let's plot the mean reward obtained per episode +# +# To make training last longer, increase the ``n_iters`` hyperparameter. +# +plt.plot(episode_reward_mean_list) +plt.xlabel("Training iterations") +plt.ylabel("Reward") +plt.title("Episode reward mean") +plt.show() + +###################################################################### +# Render +# ------ +# +# If you are running this in a machine with GUI, you can render the trained policy by running: +# +# .. code-block:: python +# +# env.rollout( +# max_steps=max_steps, +# policy=policy, +# callback=lambda env, _: env.render(), +# auto_cast_to_device=True, +# break_when_any_done=False, +# ) +# +# If you are running this in Google Colab, you can render the trained policy by running: +# +# .. code-block:: bash +# +# !apt-get update +# !apt-get install -y x11-utils +# !apt-get install -y xvfb +# !pip install pyvirtualdisplay +# +# .. code-block:: python +# +# import pyvirtualdisplay +# display = pyvirtualdisplay.Display(visible=False, size=(1400, 900)) +# display.start() +# from PIL import Image +# +# def rendering_callback(env, td): +# env.frames.append(Image.fromarray(env.render(mode="rgb_array"))) +# env.frames = [] +# env.rollout( +# max_steps=max_steps, +# policy=policy, +# callback=rendering_callback, +# auto_cast_to_device=True, +# break_when_any_done=False, +# ) +# env.frames[0].save( +# f"{scenario_name}.gif", +# save_all=True, +# append_images=env.frames[1:], +# duration=3, +# loop=0, +# ) +# +# from IPython.display import Image +# Image(open(f"{scenario_name}.gif", "rb").read()) +# + + +###################################################################### +# Conclusion and next steps +# ------------------------- +# +# In this tutorial, we have seen: +# +# - How to create a multi-agent environment in TorchRL, how its specs work, and how it integrates with the library; +# - How you use GPU vectorized environments in TorchRL; +# - How to create different multi-agent network architectures in TorchRL (e.g., using parameter sharing, centralised critic) +# - How we can use :class:`tensordict.TensorDict` to carry multi-agent data; +# - How we can tie all the library components (collectors, modules, replay buffers, and losses) in a multi-agent MAPPO/IPPO training loop. +# +# Now that you are proficient with multi-agent PPO, you can check out all +# `TorchRL multi-agent examples `__. +# These are code-only scripts of many popular MARL algorithms such as the ones seen in this tutorial, +# QMIX, MADDPG, IQL, and many more! +# +# If you are interested in creating or wrapping your own multi-agent environments in TorchRL, +# you can check out the dedicated +# `doc section `_. +# +# Finally, you can modify the parameters of this tutorial to try many other configurations and scenarios +# to become a MARL master. +# Here are a few videos of some possible scenarios you can try in VMAS. +# +# .. figure:: https://github.com/matteobettini/vmas-media/blob/main/media/VMAS_scenarios.gif?raw=true +# :alt: VMAS scenarios +# +# Scenarios available in `VMAS `__ +# From a16492beed394991d36b61f698c3c89426cd2562 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Wed, 26 Jul 2023 20:38:09 +0100 Subject: [PATCH 017/148] [Refactor] Remove loss device (#1395) Signed-off-by: Matteo Bettini --- torchrl/objectives/a2c.py | 14 ++++++++------ torchrl/objectives/common.py | 15 ++++----------- torchrl/objectives/dqn.py | 19 ++++--------------- torchrl/objectives/ppo.py | 14 ++++++++------ 4 files changed, 24 insertions(+), 38 deletions(-) diff --git a/torchrl/objectives/a2c.py b/torchrl/objectives/a2c.py index 89314c0603b..ea2c715d927 100644 --- a/torchrl/objectives/a2c.py +++ b/torchrl/objectives/a2c.py @@ -232,12 +232,14 @@ def __init__( self.convert_to_functional(critic, "critic", compare_against=policy_params) self.samples_mc_entropy = samples_mc_entropy self.entropy_bonus = entropy_bonus and entropy_coef - self.register_buffer( - "entropy_coef", torch.tensor(entropy_coef, device=self.device) - ) - self.register_buffer( - "critic_coef", torch.tensor(critic_coef, device=self.device) - ) + + try: + device = next(self.parameters()).device + except AttributeError: + device = torch.device("cpu") + + self.register_buffer("entropy_coef", torch.tensor(entropy_coef, device=device)) + self.register_buffer("critic_coef", torch.tensor(critic_coef, device=device)) if gamma is not None: warnings.warn(_GAMMA_LMBDA_DEPREC_WARNING, category=DeprecationWarning) self.gamma = gamma diff --git a/torchrl/objectives/common.py b/torchrl/objectives/common.py index 3b96913747e..2e86631f512 100644 --- a/torchrl/objectives/common.py +++ b/torchrl/objectives/common.py @@ -8,7 +8,7 @@ import warnings from copy import deepcopy from dataclasses import dataclass -from typing import Iterator, List, Optional, Tuple, Union +from typing import Iterator, List, Optional, Tuple import torch @@ -24,6 +24,7 @@ from torch.nn import Parameter from torchrl._utils import RL_WARNINGS +from torchrl.data import DEVICE_TYPING from torchrl.envs.utils import ExplorationType, set_exploration_type from torchrl.modules.utils import Buffer from torchrl.objectives.utils import _cache_values, ValueEstimators @@ -252,7 +253,6 @@ def convert_to_functional( # as tensor = nn.Parameter(tensor) keeps its identity when moved to another device def create_buffers(tensor): - if isinstance(tensor, torch.Tensor) and not isinstance( tensor, (Buffer, nn.Parameter) ): @@ -285,7 +285,6 @@ def create_buffers(tensor): # For buffers, a cloned expansion (or equivalently a repeat) is returned. def _compare_and_expand(param): - if param in compare_against: expanded_param = param.data.expand(expand_dim, *param.shape) # the expanded parameter must be sent to device when to() @@ -376,7 +375,7 @@ def _compare_and_expand(param): target_params = params_and_buffers.apply(_make_target_param(clone=True)) target_params_items = target_params.items(True, True) target_params_list = [] - for (key, val) in target_params_items: + for key, val in target_params_items: if not isinstance(key, tuple): key = (key,) name = sep.join([name_params_target, *key]) @@ -493,12 +492,6 @@ def _networks(self) -> Iterator[nn.Module]: if isinstance(item, nn.Module): yield item - @property - def device(self) -> torch.device: - for p in self.parameters(): - return p.device - return torch.device("cpu") - def register_buffer( self, name: str, tensor: Optional[Tensor], persistent: bool = True ) -> None: @@ -530,7 +523,7 @@ def to(self, *args, **kwargs): out._cache = {} return out - def cuda(self, device: Optional[Union[int, device]] = None) -> LossModule: + def cuda(self, device: Optional[DEVICE_TYPING] = None) -> LossModule: if device is None: return self.to("cuda") else: diff --git a/torchrl/objectives/dqn.py b/torchrl/objectives/dqn.py index d740d45507e..c37328e9326 100644 --- a/torchrl/objectives/dqn.py +++ b/torchrl/objectives/dqn.py @@ -278,23 +278,13 @@ def forward(self, tensordict: TensorDictBase) -> TensorDict: a tensor containing the DQN loss. """ - if self.device is not None: - warnings.warn( - "The use of a device for the objective function will soon be deprecated", - category=DeprecationWarning, - ) - device = self.device - else: - device = tensordict.device - tddevice = tensordict.to(device) - - td_copy = tddevice.clone(False) + td_copy = tensordict.clone(False) self.value_network( td_copy, params=self.value_network_params, ) - action = tddevice.get(self.tensor_keys.action) + action = tensordict.get(self.tensor_keys.action) pred_val = td_copy.get(self.tensor_keys.action_value) if self.action_space == "categorical": @@ -433,10 +423,9 @@ def _log_ps_a_categorical(action, action_log_softmax): def forward(self, input_tensordict: TensorDictBase) -> TensorDict: # from https://github.com/Kaixhin/Rainbow/blob/9ff5567ad1234ae0ed30d8471e8f13ae07119395/agent.py - device = self.device tensordict = TensorDict( source=input_tensordict, batch_size=input_tensordict.batch_size - ).to(device) + ) if tensordict.batch_dims != 1: raise RuntimeError( @@ -543,7 +532,7 @@ def forward(self, input_tensordict: TensorDictBase) -> TensorDict: m.view(-1).index_add_(0, index, tensor) # Cross-entropy loss (minimises DKL(m||p(s_t, a_t))) - loss = -torch.sum(m.to(device) * log_ps_a, 1) + loss = -torch.sum(m.to(input_tensordict.device) * log_ps_a, 1) input_tensordict.set( self.tensor_keys.priority, loss.detach().unsqueeze(1).to(input_tensordict.device), diff --git a/torchrl/objectives/ppo.py b/torchrl/objectives/ppo.py index 3cd61922dc6..06ccea7ff30 100644 --- a/torchrl/objectives/ppo.py +++ b/torchrl/objectives/ppo.py @@ -279,12 +279,14 @@ def __init__( self.samples_mc_entropy = samples_mc_entropy self.entropy_bonus = entropy_bonus self.separate_losses = separate_losses - self.register_buffer( - "entropy_coef", torch.tensor(entropy_coef, device=self.device) - ) - self.register_buffer( - "critic_coef", torch.tensor(critic_coef, device=self.device) - ) + + try: + device = next(self.parameters()).device + except AttributeError: + device = torch.device("cpu") + + self.register_buffer("entropy_coef", torch.tensor(entropy_coef, device=device)) + self.register_buffer("critic_coef", torch.tensor(critic_coef, device=device)) self.loss_critic_type = loss_critic_type self.normalize_advantage = normalize_advantage if gamma is not None: From 77ccec47770d5c8c230619c913389af2a0530eee Mon Sep 17 00:00:00 2001 From: Steven Morad Date: Wed, 26 Jul 2023 20:39:04 +0100 Subject: [PATCH 018/148] [BugFix] Fix LSTM use with padded/masked segments (#1399) --- test/test_tensordictmodules.py | 20 +++++++++++++++++++- torchrl/modules/tensordict_module/rnn.py | 4 ++-- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/test/test_tensordictmodules.py b/test/test_tensordictmodules.py index ddcdf0f7535..18ace00dd4f 100644 --- a/test/test_tensordictmodules.py +++ b/test/test_tensordictmodules.py @@ -7,7 +7,7 @@ import pytest import torch -from tensordict import TensorDict, unravel_key_list +from tensordict import pad, TensorDict, unravel_key_list from tensordict.nn import InteractionType, make_functional, TensorDictModule from torch import nn from torchrl.data.tensor_specs import ( @@ -1634,6 +1634,24 @@ def test_set_temporal_mode(self): lstm_module.parameters() ) + def test_noncontiguous(self): + lstm_module = LSTMModule( + input_size=3, + hidden_size=12, + batch_first=True, + in_keys=["bork", "h0", "h1"], + out_keys=["dork", ("next", "h0"), ("next", "h1")], + ) + td = TensorDict( + { + "bork": torch.randn(3, 3), + "is_init": torch.zeros(3, 1, dtype=torch.bool), + }, + [3], + ) + padded = pad(td, [0, 5]) + lstm_module(padded) + @pytest.mark.parametrize("shape", [[], [2], [2, 3], [2, 3, 4]]) def test_singel_step(self, shape): td = TensorDict( diff --git a/torchrl/modules/tensordict_module/rnn.py b/torchrl/modules/tensordict_module/rnn.py index 9e7e4421844..d511b069612 100644 --- a/torchrl/modules/tensordict_module/rnn.py +++ b/torchrl/modules/tensordict_module/rnn.py @@ -301,7 +301,7 @@ def forward(self, tensordict: TensorDictBase): batch_size=[nelts, tensordict_shaped.shape[-1]], ) else: - tensordict_shaped = tensordict.view(-1).unsqueeze(-1) + tensordict_shaped = tensordict.reshape(-1).unsqueeze(-1) is_init = tensordict_shaped.get("is_init").squeeze(-1) splits = None @@ -340,7 +340,7 @@ def forward(self, tensordict: TensorDictBase): tensordict_shaped.set(self.out_keys[2], hidden1) if splits is not None: # let's recover our original shape - tensordict_shaped = _inv_pad_sequence(tensordict_shaped, splits).view( + tensordict_shaped = _inv_pad_sequence(tensordict_shaped, splits).reshape( tensordict_shaped_shape ) From 51578249f60c00f2def77ab3c475f7071cf58f4f Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Thu, 27 Jul 2023 04:47:37 +0100 Subject: [PATCH 019/148] [CI] Fix tuto deps (#1416) --- docs/requirements.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/requirements.txt b/docs/requirements.txt index 177fa84e9dc..8bb409ff326 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -24,3 +24,4 @@ imageio[ffmpeg,pyav] memory_profiler pyrender pytest +vmas==1.2.11 From d6f41298724fb18877f63d88074b65e679ea6a11 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Thu, 27 Jul 2023 11:06:40 +0100 Subject: [PATCH 020/148] [BugFix] unlock in tensordictmodules tests (#1417) --- test/test_tensordictmodules.py | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/test/test_tensordictmodules.py b/test/test_tensordictmodules.py index 18ace00dd4f..c3f30f05fb3 100644 --- a/test/test_tensordictmodules.py +++ b/test/test_tensordictmodules.py @@ -857,7 +857,8 @@ def test_functional(self, safe, spec_type): assert hasattr(tdmodule, "__delitem__") assert len(tdmodule) == 3 del tdmodule[2] - del params["module", "2"] + with params.unlock_(): + del params["module", "2"] assert len(tdmodule) == 2 assert hasattr(tdmodule, "__getitem__") @@ -939,7 +940,8 @@ def test_functional_probabilistic(self, safe, spec_type): assert hasattr(tdmodule, "__delitem__") assert len(tdmodule) == 4 del tdmodule[3] - del params["module", "3"] + with params.unlock_(): + del params["module", "3"] assert len(tdmodule) == 3 assert hasattr(tdmodule, "__getitem__") @@ -1014,7 +1016,8 @@ def test_functional_with_buffer(self, safe, spec_type): assert hasattr(tdmodule, "__delitem__") assert len(tdmodule) == 3 del tdmodule[2] - del params["module", "2"] + with params.unlock_(): + del params["module", "2"] assert len(tdmodule) == 2 assert hasattr(tdmodule, "__getitem__") @@ -1103,7 +1106,8 @@ def test_functional_with_buffer_probabilistic(self, safe, spec_type): assert hasattr(tdmodule, "__delitem__") assert len(tdmodule) == 4 del tdmodule[3] - del params["module", "3"] + with params.unlock_(): + del params["module", "3"] assert len(tdmodule) == 3 assert hasattr(tdmodule, "__getitem__") @@ -1184,7 +1188,8 @@ def test_vmap(self, safe, spec_type): assert hasattr(tdmodule, "__delitem__") assert len(tdmodule) == 3 del tdmodule[2] - del params["module", "2"] + with params.unlock_(): + del params["module", "2"] assert len(tdmodule) == 2 assert hasattr(tdmodule, "__getitem__") From ad7c2d66dfc027321acd4609ed4f7c0752dffcb5 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Fri, 28 Jul 2023 14:21:15 +0100 Subject: [PATCH 021/148] [Feature] VMAS obs dict (#1419) Signed-off-by: Matteo Bettini --- torchrl/envs/libs/vmas.py | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/torchrl/envs/libs/vmas.py b/torchrl/envs/libs/vmas.py index 04620804d8a..45fcce765c0 100644 --- a/torchrl/envs/libs/vmas.py +++ b/torchrl/envs/libs/vmas.py @@ -185,7 +185,7 @@ def _make_specs( { key: UnboundedContinuousTensorSpec( shape=_selective_unsqueeze( - value, batch_size=torch.Size((self.num_envs,)) + value, batch_size=self.batch_size ).shape[1:], device=self.device, dtype=torch.float32, @@ -303,7 +303,7 @@ def _reset( "observation": agent_obs, }, }, - batch_size=(self.num_envs,), + batch_size=self.batch_size, device=self.device, ) if agent_info is not None: @@ -339,7 +339,7 @@ def _step( "reward": agent_rew, }, }, - batch_size=(self.num_envs,), + batch_size=self.batch_size, device=self.device, ) if agent_info is not None: @@ -352,11 +352,15 @@ def _step( return tensordict_out.select().set("next", tensordict_out) - def read_obs(self, observations: torch.Tensor) -> torch.Tensor: - observations = _selective_unsqueeze( - observations, batch_size=torch.Size((self.num_envs,)) + def read_obs( + self, observations: Union[Dict, torch.Tensor] + ) -> Union[Dict, torch.Tensor]: + if isinstance(observations, torch.Tensor): + return _selective_unsqueeze(observations, batch_size=self.batch_size) + return TensorDict( + source={key: self.read_obs(value) for key, value in observations.items()}, + batch_size=self.batch_size, ) - return observations def read_info(self, infos: Dict[str, torch.Tensor]) -> torch.Tensor: if len(infos) == 0: @@ -364,22 +368,22 @@ def read_info(self, infos: Dict[str, torch.Tensor]) -> torch.Tensor: infos = TensorDict( source={ key: _selective_unsqueeze( - value.to(torch.float32), batch_size=torch.Size((self.num_envs,)) + value.to(torch.float32), batch_size=self.batch_size ) for key, value in infos.items() }, - batch_size=torch.Size((self.num_envs,)), + batch_size=self.batch_size, device=self.device, ) return infos def read_done(self, done): - done = _selective_unsqueeze(done, batch_size=torch.Size((self.num_envs,))) + done = _selective_unsqueeze(done, batch_size=self.batch_size) return done def read_reward(self, rewards): - rewards = _selective_unsqueeze(rewards, batch_size=torch.Size((self.num_envs,))) + rewards = _selective_unsqueeze(rewards, batch_size=self.batch_size) return rewards def read_action(self, action): From a95dc1192f04bfe1f81a5daa5c4ad696f1e11322 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Mon, 31 Jul 2023 18:39:24 +0100 Subject: [PATCH 022/148] [BugFix] Fix `LazyStackedCompositeSpec` and introducing `consolidate_spec` (#1392) Signed-off-by: Matteo Bettini Co-authored-by: vmoens --- docs/source/reference/data.rst | 4 + test/test_specs.py | 525 ++++++++++++++++++++++++++++++++- torchrl/data/__init__.py | 1 + torchrl/data/tensor_specs.py | 479 ++++++++++++++++++++++-------- torchrl/data/utils.py | 144 +++++++++ torchrl/envs/utils.py | 7 + 6 files changed, 1043 insertions(+), 117 deletions(-) diff --git a/docs/source/reference/data.rst b/docs/source/reference/data.rst index 83b1fea1464..f8618b80a25 100644 --- a/docs/source/reference/data.rst +++ b/docs/source/reference/data.rst @@ -215,6 +215,8 @@ Check the :obj:`torchrl.envs.utils.check_env_specs` method for a sanity check. OneHotDiscreteTensorSpec UnboundedContinuousTensorSpec UnboundedDiscreteTensorSpec + LazyStackedTensorSpec + LazyStackedCompositeSpec Reinforcement Learning From Human Feedback (RLHF) ------------------------------------------------- @@ -253,3 +255,5 @@ Utils :template: rl_template.rst MultiStep + consolidate_spec + check_no_exclusive_keys diff --git a/test/test_specs.py b/test/test_specs.py index 10adac74bdc..6e84e50c103 100644 --- a/test/test_specs.py +++ b/test/test_specs.py @@ -11,6 +11,8 @@ from _utils_internal import get_available_devices, get_default_devices, set_global_var from scipy.stats import chisquare from tensordict.tensordict import LazyStackedTensorDict, TensorDict, TensorDictBase +from tensordict.utils import _unravel_key_to_tuple + from torchrl.data.tensor_specs import ( _keys_to_empty_composite_spec, BinaryDiscreteTensorSpec, @@ -21,9 +23,11 @@ MultiDiscreteTensorSpec, MultiOneHotDiscreteTensorSpec, OneHotDiscreteTensorSpec, + TensorSpec, UnboundedContinuousTensorSpec, UnboundedDiscreteTensorSpec, ) +from torchrl.data.utils import check_no_exclusive_keys, consolidate_spec @pytest.mark.parametrize("dtype", [torch.float32, torch.float16, torch.float64, None]) @@ -2147,8 +2151,10 @@ def test_stack_unboundeddiscrete_zero(self, shape, stack_dim): def test_to_numpy(self, shape, stack_dim): c1 = BoundedTensorSpec(-1, 1, shape=shape, dtype=torch.float64) - c2 = BoundedTensorSpec(-1, 1, shape=shape, dtype=torch.float32) + c2 = BoundedTensorSpec(-1, 1, shape=shape, dtype=torch.float64) + c = torch.stack([c1, c2], stack_dim) + torch.manual_seed(0) shape = list(shape) @@ -2164,14 +2170,124 @@ def test_to_numpy(self, shape, stack_dim): with pytest.raises(AssertionError): c.to_numpy(val + 1, safe=True) + def test_malformed_stack(self, shape, stack_dim): + c1 = BoundedTensorSpec(-1, 1, shape=shape, dtype=torch.float64) + c2 = BoundedTensorSpec(-1, 1, shape=shape, dtype=torch.float32) + with pytest.raises(RuntimeError, match="Dtypes differ"): + torch.stack([c1, c2], stack_dim) + + c1 = BoundedTensorSpec(-1, 1, shape=shape, dtype=torch.float32) + c2 = UnboundedContinuousTensorSpec(shape=shape, dtype=torch.float32) + c3 = UnboundedDiscreteTensorSpec(shape=shape, dtype=torch.float32) + with pytest.raises( + RuntimeError, + match="Stacking specs cannot occur: Found more than one type of specs in the list.", + ): + torch.stack([c1, c2], stack_dim) + torch.stack([c3, c2], stack_dim) + + c1 = BoundedTensorSpec(-1, 1, shape=shape, dtype=torch.float32) + c2 = BoundedTensorSpec(-1, 1, shape=shape + (3,), dtype=torch.float32) + with pytest.raises(RuntimeError, match="Ndims differ"): + torch.stack([c1, c2], stack_dim) + -class TestStackComposite: +class TestDenseStackedCompositeSpecs: def test_stack(self): c1 = CompositeSpec(a=UnboundedContinuousTensorSpec()) c2 = c1.clone() c = torch.stack([c1, c2], 0) assert isinstance(c, CompositeSpec) + +class TestLazyStackedCompositeSpecs: + def _get_het_specs( + self, + batch_size=(), + stack_dim: int = 0, + ): + shared = BoundedTensorSpec(minimum=0, maximum=1, shape=(*batch_size, 32, 32, 3)) + hetero_3d = UnboundedContinuousTensorSpec( + shape=( + *batch_size, + 3, + ) + ) + hetero_2d = UnboundedContinuousTensorSpec( + shape=( + *batch_size, + 2, + ) + ) + lidar = BoundedTensorSpec( + minimum=0, + maximum=5, + shape=( + *batch_size, + 20, + ), + ) + + individual_0_obs = CompositeSpec( + { + "individual_0_obs_0": UnboundedContinuousTensorSpec( + shape=( + *batch_size, + 3, + 1, + ) + ) + }, + shape=(*batch_size, 3), + ) + individual_1_obs = CompositeSpec( + { + "individual_1_obs_0": BoundedTensorSpec( + minimum=0, maximum=3, shape=(*batch_size, 3, 1, 2) + ) + }, + shape=(*batch_size, 3), + ) + individual_2_obs = CompositeSpec( + { + "individual_1_obs_0": UnboundedContinuousTensorSpec( + shape=(*batch_size, 3, 1, 2, 3) + ) + }, + shape=(*batch_size, 3), + ) + + spec_list = [ + CompositeSpec( + { + "shared": shared, + "lidar": lidar, + "hetero": hetero_3d, + "individual_0_obs": individual_0_obs, + }, + shape=batch_size, + ), + CompositeSpec( + { + "shared": shared, + "lidar": lidar, + "hetero": hetero_2d, + "individual_1_obs": individual_1_obs, + }, + shape=batch_size, + ), + CompositeSpec( + { + "shared": shared, + "hetero": hetero_2d, + "individual_2_obs": individual_2_obs, + }, + shape=batch_size, + ), + ] + + return torch.stack(spec_list, dim=stack_dim) + def test_stack_index(self): c1 = CompositeSpec(a=UnboundedContinuousTensorSpec()) c2 = CompositeSpec( @@ -2428,6 +2544,389 @@ def test_to_numpy(self): with pytest.raises(AssertionError): c.to_numpy(td_fail, safe=True) + def test_unsqueeze(self): + c1 = CompositeSpec(a=BoundedTensorSpec(-1, 1, shape=(1, 3)), shape=(1, 3)) + c2 = CompositeSpec( + a=BoundedTensorSpec(-1, 1, shape=(1, 3)), + b=UnboundedDiscreteTensorSpec(shape=(1, 3)), + shape=(1, 3), + ) + c = torch.stack([c1, c2], 1) + for unsq in range(-2, 3): + cu = c.unsqueeze(unsq) + shape = list(c.shape) + new_unsq = unsq if unsq >= 0 else c.ndim + unsq + 1 + shape.insert(new_unsq, 1) + assert cu.shape == torch.Size(shape) + cus = cu.squeeze(unsq) + assert c.shape == cus.shape, unsq + assert cus == c + + assert c.squeeze().shape == torch.Size([2, 3]) + + c = self._get_het_specs() + cu = c.unsqueeze(0) + assert cu.shape == torch.Size([1, 3]) + cus = cu.squeeze(0) + assert cus == c + + @pytest.mark.parametrize("batch_size", [(), (4,), (4, 2)]) + def test_len(self, batch_size): + c = self._get_het_specs(batch_size=batch_size) + assert len(c) == c.shape[0] + assert len(c) == len(c.rand()) + + @pytest.mark.parametrize("batch_size", [(), (4,), (4, 2)]) + def test_eq(self, batch_size): + c = self._get_het_specs(batch_size=batch_size) + c2 = self._get_het_specs(batch_size=batch_size) + + assert c == c2 and not c != c2 + assert c == c.clone() and not c != c.clone() + + del c2["shared"] + assert not c == c2 and c != c2 + + c2 = self._get_het_specs(batch_size=batch_size) + del c2[0]["lidar"] + + assert not c == c2 and c != c2 + + c2 = self._get_het_specs(batch_size=batch_size) + c2[0]["lidar"].space.minimum += 1 + assert not c == c2 and c != c2 + + @pytest.mark.parametrize("batch_size", [(), (4,), (4, 2)]) + @pytest.mark.parametrize("include_nested", [True, False]) + @pytest.mark.parametrize("leaves_only", [True, False]) + def test_del(self, batch_size, include_nested, leaves_only): + c = self._get_het_specs(batch_size=batch_size) + td_c = c.rand() + + keys = list(c.keys(include_nested=include_nested, leaves_only=leaves_only)) + for k in keys: + del c[k] + del td_c[k] + assert len(c.keys(include_nested=include_nested, leaves_only=leaves_only)) == 0 + assert ( + len(td_c.keys(include_nested=include_nested, leaves_only=leaves_only)) == 0 + ) + + keys = list(c[0].keys(include_nested=include_nested, leaves_only=leaves_only)) + for k in keys: + del c[k] + del td_c[k] + assert ( + len(c[0].keys(include_nested=include_nested, leaves_only=leaves_only)) == 0 + ) + assert ( + len(td_c[0].keys(include_nested=include_nested, leaves_only=leaves_only)) + == 0 + ) + with pytest.raises(KeyError): + del c["individual_1_obs_0"] + with pytest.raises(KeyError): + del td_c["individual_1_obs_0"] + + del c[("individual_1_obs", "individual_1_obs_0")] + del td_c[("individual_1_obs", "individual_1_obs_0")] + + @pytest.mark.parametrize("batch_size", [(), (4,), (4, 2)]) + def test_is_in(self, batch_size): + c = self._get_het_specs(batch_size=batch_size) + td_c = c.rand() + assert c.is_in(td_c) + + del td_c["shared"] + with pytest.raises(KeyError): + assert not c.is_in(td_c) + + td_c = c.rand() + del td_c[("individual_1_obs", "individual_1_obs_0")] + with pytest.raises(KeyError): + assert not c.is_in(td_c) + + td_c = c.rand() + td_c["shared"] += 1 + assert not c.is_in(td_c) + + td_c = c.rand() + td_c[1]["individual_1_obs", "individual_1_obs_0"] += 4 + assert not c.is_in(td_c) + + td_c = c.rand() + td_c[0]["individual_0_obs", "individual_0_obs_0"] += 1 + assert c.is_in(td_c) + + def test_type_check(self): + c = self._get_het_specs() + td_c = c.rand() + + c.type_check(td_c) + c.type_check(td_c["shared"], "shared") + + @pytest.mark.parametrize("batch_size", [(), (4,), (4, 2)]) + def test_project(self, batch_size): + c = self._get_het_specs(batch_size=batch_size) + td_c = c.rand() + assert c.is_in(td_c) + val = c.project(td_c) + assert c.is_in(val) + + del td_c["shared"] + with pytest.raises(KeyError): + c.is_in(td_c) + + td_c = c.rand() + del td_c[("individual_1_obs", "individual_1_obs_0")] + with pytest.raises(KeyError): + c.is_in(td_c) + + td_c = c.rand() + td_c["shared"] += 1 + assert not c.is_in(td_c) + val = c.project(td_c) + assert c.is_in(val) + + td_c = c.rand() + td_c[1]["individual_1_obs", "individual_1_obs_0"] += 4 + assert not c.is_in(td_c) + val = c.project(td_c) + assert c.is_in(val) + + td_c = c.rand() + td_c[0]["individual_0_obs", "individual_0_obs_0"] += 1 + assert c.is_in(td_c) + + def test_repr(self): + c = self._get_het_specs() + + expected = f"""LazyStackedCompositeSpec( + fields={{ + hetero: LazyStackedUnboundedContinuousTensorSpec( + shape=torch.Size([3, -1]), device=cpu, dtype=torch.float32, domain=continuous), + shared: BoundedTensorSpec( + shape=torch.Size([3, 32, 32, 3]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([3, 32, 32, 3]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([3, 32, 32, 3]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous)}}, + exclusive_fields={{ + 0 -> + lidar: BoundedTensorSpec( + shape=torch.Size([20]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([20]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([20]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous), + individual_0_obs: CompositeSpec( + individual_0_obs_0: UnboundedContinuousTensorSpec( + shape=torch.Size([3, 1]), + space=None, + device=cpu, + dtype=torch.float32, + domain=continuous), device=cpu, shape=torch.Size([3])), + 1 -> + lidar: BoundedTensorSpec( + shape=torch.Size([20]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([20]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([20]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous), + individual_1_obs: CompositeSpec( + individual_1_obs_0: BoundedTensorSpec( + shape=torch.Size([3, 1, 2]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([3, 1, 2]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([3, 1, 2]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous), device=cpu, shape=torch.Size([3])), + 2 -> + individual_2_obs: CompositeSpec( + individual_1_obs_0: UnboundedContinuousTensorSpec( + shape=torch.Size([3, 1, 2, 3]), + space=None, + device=cpu, + dtype=torch.float32, + domain=continuous), device=cpu, shape=torch.Size([3]))}}, + device=cpu, + shape={torch.Size((3,))}, + stack_dim={c.stack_dim})""" + assert expected == repr(c) + + c = c[0:2] + del c["individual_0_obs"] + del c["individual_1_obs"] + expected = f"""LazyStackedCompositeSpec( + fields={{ + hetero: LazyStackedUnboundedContinuousTensorSpec( + shape=torch.Size([2, -1]), device=cpu, dtype=torch.float32, domain=continuous), + lidar: BoundedTensorSpec( + shape=torch.Size([2, 20]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([2, 20]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([2, 20]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous), + shared: BoundedTensorSpec( + shape=torch.Size([2, 32, 32, 3]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([2, 32, 32, 3]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([2, 32, 32, 3]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous)}}, + exclusive_fields={{ + }}, + device=cpu, + shape={torch.Size((2,))}, + stack_dim={c.stack_dim})""" + assert expected == repr(c) + + @pytest.mark.parametrize("batch_size", [(), (2,), (2, 1)]) + def test_consolidate_spec(self, batch_size): + spec = self._get_het_specs(batch_size) + spec_lazy = spec.clone() + + assert not check_no_exclusive_keys(spec_lazy) + + spec_lazy = consolidate_spec(spec_lazy, recurse_through_entries=False) + assert check_no_exclusive_keys(spec_lazy, recurse=False) + + spec_lazy = consolidate_spec(spec_lazy, recurse_through_entries=True) + assert check_no_exclusive_keys(spec_lazy, recurse=True) + + assert get_all_keys(spec, include_exclusive=True) == get_all_keys( + spec_lazy, include_exclusive=False + ) + + @pytest.mark.parametrize("batch_size", [(), (2,), (2, 1)]) + def test_consolidate_spec_exclusive_lazy_stacked(self, batch_size): + shared = UnboundedContinuousTensorSpec( + shape=( + *batch_size, + 5, + 5, + 5, + ) + ) + lazy_spec = torch.stack( + [ + UnboundedContinuousTensorSpec(shape=(*batch_size, 5, 6, 7)), + UnboundedContinuousTensorSpec(shape=(*batch_size, 5, 7, 7)), + UnboundedContinuousTensorSpec(shape=(*batch_size, 5, 8, 7)), + UnboundedContinuousTensorSpec(shape=(*batch_size, 5, 8, 7)), + ], + dim=len(batch_size), + ) + + spec_list = [ + CompositeSpec( + { + "shared": shared, + "lazy_spec": lazy_spec, + }, + shape=batch_size, + ), + CompositeSpec( + { + "shared": shared, + }, + shape=batch_size, + ), + CompositeSpec( + {}, + shape=batch_size, + device="cpu", + ), + ] + + spec = torch.stack(spec_list, dim=0) + spec_consolidated = consolidate_spec(spec) + + assert spec_consolidated["shared"].shape == (3, *batch_size, -1, -1, -1) + assert spec_consolidated["lazy_spec"].shape == (3, *batch_size, 4, 5, -1, 7) + + assert check_no_exclusive_keys(spec_consolidated, recurse=True) + assert get_all_keys(spec, include_exclusive=True) == get_all_keys( + spec_consolidated, include_exclusive=False + ) + + @pytest.mark.parametrize("batch_size", [(2,), (2, 1)]) + def test_update(self, batch_size, stack_dim=0): + spec = self._get_het_specs(batch_size, stack_dim) + spec2 = self._get_het_specs(batch_size, stack_dim) + + del spec2["shared"] + spec2["hetero"] = spec2["hetero"].unsqueeze(-1) + assert spec["hetero"].shape == (3, *batch_size, -1) + spec.update(spec2) + assert spec["hetero"].shape == (3, *batch_size, -1, 1) + + spec2[1]["individual_1_obs"]["individual_1_obs_0"].space.minimum += 1 + assert ( + spec[1]["individual_1_obs"]["individual_1_obs_0"].space.minimum.sum() == 0 + ) + spec.update(spec2) + assert ( + spec[1]["individual_1_obs"]["individual_1_obs_0"].space.minimum.sum() == 0 + ) # Only non exclusive keys will be updated + + new = torch.stack( + [UnboundedContinuousTensorSpec(shape=(*batch_size, i)) for i in range(3)], 0 + ) + spec2["new"] = new + spec.update(spec2) + assert spec["new"] == new + + @pytest.mark.parametrize("batch_size", [(2,), (2, 1)]) + @pytest.mark.parametrize("stack_dim", [0, 1]) + def test_set_item(self, batch_size, stack_dim): + spec = self._get_het_specs(batch_size, stack_dim) + + new = torch.stack( + [UnboundedContinuousTensorSpec(shape=(*batch_size, i)) for i in range(3)], + stack_dim, + ) + spec["new"] = new + assert spec["new"] == new + + new = new.unsqueeze(-1) + spec["new"] = new + assert spec["new"] == new + + new = new.squeeze(-1) + assert spec["new"] == new.unsqueeze(-1) + + spec[("other", "key")] = new + assert spec[("other", "key")] == new + assert isinstance(spec["other"], LazyStackedCompositeSpec) + + with pytest.raises(RuntimeError, match="key should be a Sequence"): + spec[0] = new + + comp = torch.stack( + [ + CompositeSpec( + {"a": UnboundedContinuousTensorSpec(shape=(*batch_size, i))}, + shape=batch_size, + ) + for i in range(3) + ], + stack_dim, + ) + spec["comp"] = comp + assert spec["comp"] == comp + assert spec["comp", "a"] == new + # MultiDiscreteTensorSpec: Pending resolution of https://github.com/pytorch/pytorch/issues/100080. @pytest.mark.parametrize( @@ -2648,6 +3147,28 @@ def test_composite_contains(): assert ("a", ("b", ("c",))) in spec.keys(True, True) +def get_all_keys(spec: TensorSpec, include_exclusive: bool): + """Given a TensorSpec, returns all exclusive and non-exclusive keys as a set of tuples. + + Args: + spec (TensorSpec): the spec to get keys from. + include_exclusive (bool: if True, include also exclusive keys in the result. + + """ + keys = set() + if isinstance(spec, LazyStackedCompositeSpec) and include_exclusive: + for t in spec._specs: + keys = keys.union(get_all_keys(t, include_exclusive)) + if isinstance(spec, CompositeSpec): + for key in spec.keys(): + keys.add((key,)) + inner_keys = get_all_keys(spec[key], include_exclusive) + for inner_key in inner_keys: + keys.add((key,) + _unravel_key_to_tuple(inner_key)) + + return keys + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/torchrl/data/__init__.py b/torchrl/data/__init__.py index b3ad5caf02d..0d9eae41abf 100644 --- a/torchrl/data/__init__.py +++ b/torchrl/data/__init__.py @@ -46,3 +46,4 @@ UnboundedContinuousTensorSpec, UnboundedDiscreteTensorSpec, ) +from .utils import check_no_exclusive_keys, consolidate_spec diff --git a/torchrl/data/tensor_specs.py b/torchrl/data/tensor_specs.py index 4d69949b964..b11a2e2ebef 100644 --- a/torchrl/data/tensor_specs.py +++ b/torchrl/data/tensor_specs.py @@ -32,8 +32,8 @@ import numpy as np import torch from tensordict import unravel_key -from tensordict.tensordict import TensorDict, TensorDictBase -from tensordict.utils import _getitem_batch_size +from tensordict.tensordict import LazyStackedTensorDict, TensorDict, TensorDictBase +from tensordict.utils import _getitem_batch_size, NestedKey from torchrl._utils import get_binary_env_var @@ -69,6 +69,11 @@ _DEFAULT_SHAPE = torch.Size((1,)) DEVICE_ERR_MSG = "device of empty CompositeSpec is not defined." +NOT_IMPLEMENTED_ERROR = NotImplementedError( + "method is not currently implemented." + " If you are interested in this feature please submit" + " an issue at https://github.com/pytorch/rl/issues" +) def _default_dtype_and_device( @@ -391,7 +396,7 @@ def __repr__(self): f"\nmaximum=Tensor(shape={self.maximum.shape}, device={self.maximum.device}, dtype={self.maximum.dtype}, contiguous={self.maximum.is_contiguous()})", " " * 4, ) - return f"{self.__class__.__name__}({min_str}, {max_str})" + return f"{self.__class__.__name__}({min_str},{max_str})" def __eq__(self, other): return ( @@ -747,7 +752,7 @@ def __torch_function__( class _LazyStackedMixin(Generic[T]): def __init__(self, *specs: tuple[T, ...], dim: int) -> None: - self._specs = specs + self._specs = list(specs) self.dim = dim if self.dim < 0: self.dim = len(self.shape) + self.dim @@ -839,46 +844,12 @@ def __getitem__(self, item): return out return torch.stack(list(out), 0) - @property - def shape(self): - shape = list(self._specs[0].shape) - dim = self.dim - if dim < 0: - dim = len(shape) + dim + 1 - shape.insert(dim, len(self._specs)) - return torch.Size(shape) - def clone(self) -> T: - return torch.stack([spec.clone() for spec in self._specs], 0) + return torch.stack([spec.clone() for spec in self._specs], self.stack_dim) - def expand(self, *shape): - if len(shape) == 1 and not isinstance(shape[0], (int,)): - return self.expand(*shape[0]) - expand_shape = shape[: -len(self.shape)] - existing_shape = self.shape - shape_check = shape[-len(self.shape) :] - for _i, (size1, size2) in enumerate(zip(existing_shape, shape_check)): - if size1 != size2 and size1 != 1: - raise RuntimeError( - f"Expanding a non-singletom dimension: existing shape={size1} vs expand={size2}" - ) - elif size1 != size2 and size1 == 1 and _i == self.dim: - # if we're expanding along the stack dim we just need to clone the existing spec - return torch.stack( - [self._specs[0].clone() for _ in range(size2)], self.dim - ).expand(*shape) - if _i != len(self.shape) - 1: - raise RuntimeError( - f"Trying to expand non-congruent shapes: received {shape} when the shape is {self.shape}." - ) - # remove the stack dim from the expanded shape, which we know to match - unstack_shape = list(expand_shape) + [ - s for i, s in enumerate(shape_check) if i != self.dim - ] - return torch.stack( - [spec.expand(unstack_shape) for spec in self._specs], - self.dim + len(expand_shape), - ) + @property + def stack_dim(self): + return self.dim def zero(self, shape=None) -> TensorDictBase: if shape is not None: @@ -897,6 +868,75 @@ def rand(self, shape=None) -> TensorDictBase: def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> T: return torch.stack([spec.to(dest) for spec in self._specs], self.dim) + def unbind(self, dim: int): + if dim == self.stack_dim: + return self._specs + shape = self.shape + if dim < 0 or dim > self.ndim - 1 or shape[dim] == -1: + raise ValueError( + f"Provided dim {dim} is not valid for unbinding shape {shape}" + ) + else: + raise ValueError( + f"A {type(self)} instance can only be unbound along its stack dimension. Expected {self.stack_dim}, received {dim} instead." + ) + + def unsqueeze(self, dim: int): + if dim < 0: + new_dim = dim + len(self.shape) + 1 + else: + new_dim = dim + if new_dim > len(self.shape) or new_dim < 0: + raise ValueError(f"Cannot unsqueeze along dim {dim}.") + if new_dim > self.dim: + # unsqueeze 2, stack is on 1 => unsqueeze 1, stack along 1 + new_stack_dim = self.dim + new_dim = new_dim - 1 + else: + # unsqueeze 0, stack is on 1 => unsqueeze 0, stack on 1 + new_stack_dim = self.dim + 1 + return torch.stack( + [spec.unsqueeze(new_dim) for spec in self._specs], dim=new_stack_dim + ) + + def squeeze(self, dim: int = None): + if dim is None: + size = self.shape + if len(size) == 1 or size.count(1) == 0: + return self + first_singleton_dim = size.index(1) + + squeezed_dict = self.squeeze(first_singleton_dim) + return squeezed_dict.squeeze(dim=None) + + if dim < 0: + new_dim = self.ndim + dim + else: + new_dim = dim + + if self.shape and (new_dim >= self.ndim or new_dim < 0): + raise RuntimeError( + f"squeezing is allowed for dims comprised between 0 and " + f"spec.ndim only. Got dim={dim} and shape" + f"={self.shape}." + ) + + if new_dim >= self.ndim or self.shape[new_dim] != 1: + return self + + if new_dim == self.dim: + return self._specs[0] + if new_dim > self.dim: + # squeeze 2, stack is on 1 => squeeze 1, stack along 1 + new_stack_dim = self.dim + new_dim = new_dim - 1 + else: + # squeeze 0, stack is on 1 => squeeze 0, stack on 1 + new_stack_dim = self.dim - 1 + return torch.stack( + [spec.squeeze(new_dim) for spec in self._specs], dim=new_stack_dim + ) + class LazyStackedTensorSpec(_LazyStackedMixin[TensorSpec], TensorSpec): """A lazy representation of a stack of tensor specs. @@ -912,13 +952,18 @@ class LazyStackedTensorSpec(_LazyStackedMixin[TensorSpec], TensorSpec): """ - @property - def space(self): - return self._specs[0].space - def __eq__(self, other): - # requires unbind to be implemented - pass + if not isinstance(other, LazyStackedTensorSpec): + return False + if len(self._specs) != len(other._specs): + return False + for _spec1, _spec2 in zip(self._specs, other._specs): + if _spec1 != _spec2: + return False + return True + + def __len__(self): + return self.shape[0] def to_numpy(self, val: torch.Tensor, safe: bool = None) -> dict: if safe is None: @@ -933,30 +978,15 @@ def to_numpy(self, val: torch.Tensor, safe: bool = None) -> dict: spec.assert_is_in(v) return val.detach().cpu().numpy() - def __len__(self): - pass - - def project(self, val: TensorDictBase) -> TensorDictBase: - pass - def __repr__(self): shape_str = "shape=" + str(self.shape) - space_str = "space=" + str(self._specs[0].space) device_str = "device=" + str(self.device) dtype_str = "dtype=" + str(self.dtype) domain_str = "domain=" + str(self._specs[0].domain) - sub_string = ", ".join( - [shape_str, space_str, device_str, dtype_str, domain_str] - ) - string = f"{self.__class__.__name__}(\n {sub_string})" + sub_string = ", ".join([shape_str, device_str, dtype_str, domain_str]) + string = f"LazyStacked{self._specs[0].__class__.__name__}(\n {sub_string})" return string - def __iter__(self): - pass - - def __setitem__(self, key, value): - pass - @property def device(self) -> DEVICE_TYPING: return self._specs[0].device @@ -968,16 +998,75 @@ def ndim(self): def ndimension(self): return len(self.shape) - def set(self, name, spec): - if spec is not None: - shape = spec.shape - if shape[: self.ndim] != self.shape: - raise ValueError( - "The shape of the spec and the CompositeSpec mismatch: the first " - f"{self.ndim} dimensions should match but got spec.shape={spec.shape} and " - f"CompositeSpec.shape={self.shape}." + @property + def shape(self): + first_shape = self._specs[0].shape + shape = [] + for i in range(len(first_shape)): + homo_dim = True + for spec in self._specs: + if spec.shape[i] != first_shape[i]: + homo_dim = False + break + shape.append(first_shape[i] if homo_dim else -1) + + dim = self.dim + if dim < 0: + dim = len(shape) + dim + 1 + shape.insert(dim, len(self._specs)) + return torch.Size(shape) + + def expand(self, *shape): + if len(shape) == 1 and not isinstance(shape[0], (int,)): + return self.expand(*shape[0]) + expand_shape = shape[: -len(self.shape)] + existing_shape = self.shape + shape_check = shape[-len(self.shape) :] + for _i, (size1, size2) in enumerate(zip(existing_shape, shape_check)): + if size1 != size2 and size1 != 1: + raise RuntimeError( + f"Expanding a non-singletom dimension: existing shape={size1} vs expand={size2}" ) - self._specs[name] = spec + elif size1 != size2 and size1 == 1 and _i == self.dim: + # if we're expanding along the stack dim we just need to clone the existing spec + return torch.stack( + [self._specs[0].clone() for _ in range(size2)], self.dim + ).expand(*shape) + if _i != len(self.shape) - 1: + raise RuntimeError( + f"Trying to expand non-congruent shapes: received {shape} when the shape is {self.shape}." + ) + # remove the stack dim from the expanded shape, which we know to match + shape_check = [s for i, s in enumerate(shape_check) if i != self.dim] + specs = [] + for spec in self._specs: + spec_shape = [] + for dim_check, spec_dim in zip(shape_check, spec.shape): + spec_shape.append(dim_check if dim_check != -1 else spec_dim) + unstack_shape = list(expand_shape) + list(spec_shape) + specs.append(spec.expand(unstack_shape)) + return torch.stack( + specs, + self.dim + len(expand_shape), + ) + + def type_check(self, value: torch.Tensor, key: str = None) -> None: + raise NOT_IMPLEMENTED_ERROR + + def is_in(self, val) -> bool: + raise NOT_IMPLEMENTED_ERROR + + @property + def space(self): + raise NOT_IMPLEMENTED_ERROR + + def _project(self, val: TensorDictBase) -> TensorDictBase: + raise NOT_IMPLEMENTED_ERROR + + def encode( + self, val: Union[np.ndarray, torch.Tensor], *, ignore_device=False + ) -> torch.Tensor: + raise NOT_IMPLEMENTED_ERROR @dataclass(repr=False) @@ -1031,7 +1120,6 @@ def __init__( dtype: Optional[Union[str, torch.dtype]] = torch.long, use_register: bool = False, ): - dtype, device = _default_dtype_and_device(dtype, device) self.use_register = use_register space = DiscreteBox(n) @@ -2756,14 +2844,14 @@ def type_check( value = {selected_keys: value} selected_keys = [selected_keys] - for _key in self: + for _key in self.keys(): if self[_key] is not None and ( selected_keys is None or _key in selected_keys ): self._specs[_key].type_check(value[_key], _key) def is_in(self, val: Union[dict, TensorDictBase]) -> bool: - for (key, item) in self._specs.items(): + for key, item in self._specs.items(): if item is None: continue if not item.is_in(val.get(key)): @@ -2908,6 +2996,18 @@ def clone(self) -> CompositeSpec: shape=self.shape, ) + def empty(self): + """Create a spec like self, but with no entries.""" + try: + device = self.device + except RuntimeError: + device = self._device + return self.__class__( + {}, + device=device, + shape=self.shape, + ) + def to_numpy(self, val: TensorDict, safe: bool = None) -> dict: return {key: self[key].to_numpy(val) for key, val in val.items()} @@ -3115,11 +3215,28 @@ class LazyStackedCompositeSpec(_LazyStackedMixin[CompositeSpec], CompositeSpec): """ - def update(self, dict_or_spec: Union[CompositeSpec, Dict[str, TensorSpec]]) -> None: - pass + def update(self, dict) -> None: + for key, item in dict.items(): + if key in self.keys() and isinstance( + item, (Dict, CompositeSpec, LazyStackedCompositeSpec) + ): + for spec, sub_item in zip(self._specs, item.unbind(self.dim)): + spec[key].update(sub_item) + continue + self[key] = item + return self def __eq__(self, other): - pass + if not isinstance(other, LazyStackedCompositeSpec): + return False + if len(self._specs) != len(other._specs): + return False + if self.stack_dim != other.stack_dim: + return False + for _spec1, _spec2 in zip(self._specs, other._specs): + if _spec1 != _spec2: + return False + return True def to_numpy(self, val: TensorDict, safe: bool = None) -> dict: if safe is None: @@ -3135,14 +3252,22 @@ def to_numpy(self, val: TensorDict, safe: bool = None) -> dict: return {key: self[key].to_numpy(val) for key, val in val.items()} def __len__(self): - pass + return self.shape[0] - def values(self): - for key in self.keys(): + def values( + self, + include_nested: bool = False, + leaves_only: bool = False, + ): + for key in self.keys(include_nested=include_nested, leaves_only=leaves_only): yield self[key] - def items(self): - for key in self.keys(): + def items( + self, + include_nested: bool = False, + leaves_only: bool = False, + ): + for key in self.keys(include_nested=include_nested, leaves_only=leaves_only): yield key, self[key] def keys( @@ -3150,47 +3275,125 @@ def keys( include_nested: bool = False, leaves_only: bool = False, ) -> KeysView: - return self._specs[0].keys( + keys = self._specs[0].keys( include_nested=include_nested, leaves_only=leaves_only ) + keys = set(keys) + for spec in self._specs[1:]: + keys = keys.intersection(spec.keys(include_nested, leaves_only)) + return sorted(keys, key=str) def project(self, val: TensorDictBase) -> TensorDictBase: - pass - - def is_in(self, val: Union[dict, TensorDictBase]) -> bool: - pass + vals = [] + for spec, subval in zip(self._specs, val.unbind(self.dim)): + if not spec.is_in(subval): + vals.append(spec.project(subval)) + else: + vals.append(subval) + res = torch.stack(vals, dim=self.dim) + if not isinstance(val, LazyStackedTensorDict): + res = res.to_tensordict() + return res def type_check( self, value: Union[torch.Tensor, TensorDictBase], - selected_keys: Union[str, Optional[Sequence[str]]] = None, + selected_keys: Union[NestedKey, Optional[Sequence[NestedKey]]] = None, ): - pass + if selected_keys is None: + if isinstance(value, torch.Tensor): + raise ValueError( + "value must be of type TensorDictBase when key is None" + ) + for spec, subvalue in zip(self._specs, value.unbind(self.dim)): + spec.type_check(subvalue) + else: + if isinstance(value, torch.Tensor) and isinstance(selected_keys, str): + value = {selected_keys: value} + selected_keys = [selected_keys] + for _key in self.keys(): + if self[_key] is not None and _key in selected_keys: + self[_key].type_check(value[_key], _key) def __repr__(self) -> str: sub_str = ",\n".join( [indent(f"{k}: {repr(item)}", 4 * " ") for k, item in self.items()] ) - device_str = f"device={self._specs[0].device}" - shape_str = f"shape={self.shape}" - sub_str = ", ".join([sub_str, device_str, shape_str]) - return ( - f"LazyStackedCompositeSpec(\n{', '.join([sub_str, device_str, shape_str])})" + sub_str = indent(f"fields={{\n{', '.join([sub_str])}}}", 4 * " ") + exclusive_key_str = self.repr_exclusive_keys() + device_str = indent(f"device={self._specs[0].device}", 4 * " ") + shape_str = indent(f"shape={self.shape}", 4 * " ") + stack_dim = indent(f"stack_dim={self.dim}", 4 * " ") + string = ",\n".join( + [sub_str, exclusive_key_str, device_str, shape_str, stack_dim] + ) + return f"LazyStackedCompositeSpec(\n{string})" + + def repr_exclusive_keys(self): + keys = set(self.keys()) + exclusive_keys = [ + ",\n".join( + [ + indent(f"{k}: {repr(spec[k])}", 4 * " ") + for k in spec.keys() + if k not in keys + ] + ) + for spec in self._specs + ] + exclusive_key_str = ",\n".join( + [ + indent(f"{i} ->\n{line}", 4 * " ") + for i, line in enumerate(exclusive_keys) + if line != "" + ] ) - def encode( - self, vals: Dict[str, Any], ignore_device: bool = False - ) -> Dict[str, torch.Tensor]: - pass + return indent(f"exclusive_fields={{\n{exclusive_key_str}}}", 4 * " ") - def __delitem__(self, key): - pass + def is_in(self, val) -> bool: + for spec, subval in zip(self._specs, val.unbind(self.dim)): + if not spec.is_in(subval): + return False + return True + + def __delitem__(self, key: NestedKey): + """Deletes a key from the stacked composite spec. + + This method will be executed if the key is present in at least one of the stacked specs, + otherwise it will raise an error. + + Args: + key (NestedKey): the key to delete. + """ + at_least_one_deletion = False + for spec in self._specs: + try: + del spec[key] + at_least_one_deletion = True + except KeyError: + continue + if not at_least_one_deletion: + raise KeyError( + f"Key {key} must be present in at least one of the stacked specs" + ) + return self def __iter__(self): - pass + for k in self.keys(): + yield self[k] - def __setitem__(self, key, value): - pass + def __setitem__(self, key: NestedKey, value): + key = unravel_key(key) + is_key = isinstance(key, str) or ( + isinstance(key, tuple) and all(isinstance(_item, str) for _item in key) + ) + if is_key: + self.set(key, value) + else: + raise ValueError( + f"{self.__class__} expects str or tuple of str as key to set values " + ) @property def device(self) -> DEVICE_TYPING: @@ -3204,15 +3407,54 @@ def ndimension(self): return len(self.shape) def set(self, name, spec): - if spec is not None: - shape = spec.shape - if shape[: self.ndim] != self.shape: - raise ValueError( - "The shape of the spec and the CompositeSpec mismatch: the first " - f"{self.ndim} dimensions should match but got spec.shape={spec.shape} and " - f"CompositeSpec.shape={self.shape}." + for sub_spec, sub_item in zip(self._specs, spec.unbind(self.dim)): + sub_spec[name] = sub_item + + @property + def shape(self): + shape = list(self._specs[0].shape) + dim = self.dim + if dim < 0: + dim = len(shape) + dim + 1 + shape.insert(dim, len(self._specs)) + return torch.Size(shape) + + def expand(self, *shape): + if len(shape) == 1 and not isinstance(shape[0], (int,)): + return self.expand(*shape[0]) + expand_shape = shape[: -len(self.shape)] + existing_shape = self.shape + shape_check = shape[-len(self.shape) :] + for _i, (size1, size2) in enumerate(zip(existing_shape, shape_check)): + if size1 != size2 and size1 != 1: + raise RuntimeError( + f"Expanding a non-singletom dimension: existing shape={size1} vs expand={size2}" ) - self._specs[name] = spec + elif size1 != size2 and size1 == 1 and _i == self.dim: + # if we're expanding along the stack dim we just need to clone the existing spec + return torch.stack( + [self._specs[0].clone() for _ in range(size2)], self.dim + ).expand(*shape) + if _i != len(self.shape) - 1: + raise RuntimeError( + f"Trying to expand non-congruent shapes: received {shape} when the shape is {self.shape}." + ) + # remove the stack dim from the expanded shape, which we know to match + unstack_shape = list(expand_shape) + [ + s for i, s in enumerate(shape_check) if i != self.dim + ] + return torch.stack( + [spec.expand(unstack_shape) for spec in self._specs], + self.dim + len(expand_shape), + ) + + def empty(self): + return torch.stack([spec.empty() for spec in self._specs], dim=self.stack_dim) + + def encode( + self, vals: Dict[str, Any], ignore_device: bool = False + ) -> Dict[str, torch.Tensor]: + raise NOT_IMPLEMENTED_ERROR # for SPEC_CLASS in [BinaryDiscreteTensorSpec, BoundedTensorSpec, DiscreteTensorSpec, MultiDiscreteTensorSpec, MultiOneHotDiscreteTensorSpec, OneHotDiscreteTensorSpec, UnboundedContinuousTensorSpec, UnboundedDiscreteTensorSpec]: @@ -3228,14 +3470,19 @@ def _stack_specs(list_of_spec, dim, out=None): spec0 = list_of_spec[0] if isinstance(spec0, TensorSpec): device = spec0.device + all_equal = True for spec in list_of_spec[1:]: - if not isinstance(spec, TensorSpec): + if not isinstance(spec, spec0.__class__): raise RuntimeError( "Stacking specs cannot occur: Found more than one type of specs in the list." ) if device != spec.device: raise RuntimeError(f"Devices differ, got {device} and {spec.device}") + if spec.dtype != spec0.dtype: + raise RuntimeError(f"Dtypes differ, got {spec0.dtype} and {spec.dtype}") + if spec.ndim != spec0.ndim: + raise RuntimeError(f"Ndims differ, got {spec0.ndim} and {spec.ndim}") all_equal = all_equal and spec == spec0 if all_equal: shape = list(spec0.shape) @@ -3269,6 +3516,8 @@ def _stack_composite_specs(list_of_spec, dim, out=None): ) if device != spec.device: raise RuntimeError(f"Devices differ, got {device} and {spec.device}") + if spec.shape != spec0.shape: + raise RuntimeError(f"Shapes differ, got {spec.shape} and {spec0.shape}") all_equal = all_equal and spec == spec0 if all_equal: shape = list(spec0.shape) diff --git a/torchrl/data/utils.py b/torchrl/data/utils.py index 76a5f5d7f61..b2c4a7bbadc 100644 --- a/torchrl/data/utils.py +++ b/torchrl/data/utils.py @@ -10,6 +10,13 @@ import torch from torch import Tensor +from torchrl.data.tensor_specs import ( + CompositeSpec, + LazyStackedCompositeSpec, + LazyStackedTensorSpec, + TensorSpec, +) + numpy_to_torch_dtype_dict = { np.dtype("bool"): torch.bool, np.dtype("uint8"): torch.uint8, @@ -35,6 +42,143 @@ INDEX_TYPING = Union[None, int, slice, str, Tensor, List[Any], Tuple[Any, ...]] +def consolidate_spec( + spec: CompositeSpec, + recurse_through_entries: bool = True, + recurse_through_stack: bool = True, +): + """Given a TensorSpec, removes exclusive keys by adding 0 shaped specs. + + Args: + spec (CompositeSpec): the spec to be consolidated. + recurse_through_entries (bool): if True, call the function recursively on all entries of the spec. + Default is True. + recurse_through_stack (bool): if True, if the provided spec is lazy, the function recursively + on all specs in its list. Default is True. + + """ + spec = spec.clone() + + if not isinstance(spec, (CompositeSpec, LazyStackedCompositeSpec)): + return spec + + if isinstance(spec, LazyStackedCompositeSpec): + keys = set(spec.keys()) # shared keys + exclusive_keys_per_spec = [ + set() for _ in range(len(spec._specs)) + ] # list of exclusive keys per td + exclusive_keys_examples = ( + {} + ) # map of all exclusive keys to a list of their values + for spec_index in range(len(spec._specs)): # gather all exclusive keys + sub_spec = spec._specs[spec_index] + if recurse_through_stack: + sub_spec = consolidate_spec( + sub_spec, recurse_through_entries, recurse_through_stack + ) + spec._specs[spec_index] = sub_spec + for sub_spec_key in sub_spec.keys(): + if sub_spec_key not in keys: # exclusive key + exclusive_keys_per_spec[spec_index].add(sub_spec_key) + value = sub_spec[sub_spec_key] + if sub_spec_key in exclusive_keys_examples: + exclusive_keys_examples[sub_spec_key].append(value) + else: + exclusive_keys_examples.update({sub_spec_key: [value]}) + + for sub_spec, exclusive_keys in zip( + spec._specs, exclusive_keys_per_spec + ): # add missing exclusive entries + for exclusive_key in set(exclusive_keys_examples.keys()).difference( + exclusive_keys + ): + exclusive_keys_example_list = exclusive_keys_examples[exclusive_key] + sub_spec.set( + exclusive_key, + _empty_like_spec(exclusive_keys_example_list, sub_spec.shape), + ) + + if recurse_through_entries: + for key, value in spec.items(): + if isinstance(value, (CompositeSpec, LazyStackedCompositeSpec)): + spec.set( + key, + consolidate_spec( + value, recurse_through_entries, recurse_through_stack + ), + ) + return spec + + +def _empty_like_spec(specs: List[TensorSpec], shape): + for spec in specs[1:]: + if spec.__class__ != specs[0].__class__: + raise ValueError( + "Found same key in lazy specs corresponding to entries with different classes" + ) + spec = specs[0] + if isinstance(spec, (CompositeSpec, LazyStackedCompositeSpec)): + # the exclusive key has values which are CompositeSpecs -> + # we create an empty composite spec with same batch size + return spec.empty() + elif isinstance(spec, LazyStackedTensorSpec): + # the exclusive key has values which are LazyStackedTensorSpecs -> + # we create a LazyStackedTensorSpec with the same shape (aka same -1s) as the first in the list. + # this will not add any new -1s when they are stacked + shape = list(shape[: spec.stack_dim]) + list(shape[spec.stack_dim + 1 :]) + return LazyStackedTensorSpec( + *[_empty_like_spec(spec._specs, shape) for _ in spec._specs], + dim=spec.stack_dim + ) + else: + # the exclusive key has values which are TensorSpecs -> + # if the shapes of the values are all the same, we create a TensorSpec with leading shape `shape` and following dims 0 (having the same ndims as the values) + # if the shapes of the values differ, we create a TensorSpec with 0 size in the differing dims + spec_shape = list(spec.shape) + + for dim_index in range(len(spec_shape)): + hetero_dim = False + for sub_spec in specs: + if sub_spec.shape[dim_index] != spec.shape[dim_index]: + hetero_dim = True + break + if hetero_dim: + spec_shape[dim_index] = 0 + + if 0 not in spec_shape: # the values have all same shape + spec_shape = [ + dim if i < len(shape) else 0 for i, dim in enumerate(spec_shape) + ] + + spec = spec[(0,) * len(spec.shape)] + spec = spec.expand(spec_shape) + + return spec + + +def check_no_exclusive_keys(spec: TensorSpec, recurse: bool = True): + """Given a TensorSpec, returns true if there are no exclusive keys. + + Args: + spec (TensorSpec): the spec to check + recurse (bool): if True, check recursively in nested specs. Default is True. + """ + if isinstance(spec, LazyStackedCompositeSpec): + keys = set(spec.keys()) + for inner_td in spec._specs: + if recurse and not check_no_exclusive_keys(inner_td): + return False + if set(inner_td.keys()) != keys: + return False + elif isinstance(spec, CompositeSpec) and recurse: + for value in spec.values(): + if not check_no_exclusive_keys(value): + return False + else: + return True + return True + + class CloudpickleWrapper(object): """A wrapper for functions that allow for serialization in multiprocessed settings.""" diff --git a/torchrl/envs/utils.py b/torchrl/envs/utils.py index 756d05652ca..7852f6509f9 100644 --- a/torchrl/envs/utils.py +++ b/torchrl/envs/utils.py @@ -34,6 +34,7 @@ from torchrl.data import CompositeSpec +from torchrl.data.utils import check_no_exclusive_keys def _convert_exploration_type(*, exploration_mode, exploration_type): @@ -413,6 +414,12 @@ def check_env_specs(env, return_contiguous=True, check_dtype=True, seed=0): ("done", _done_spec), ("obs", _obs_spec), ): + if not check_no_exclusive_keys(spec): + raise AssertionError( + "It appears you are using some LazyStackedCompositeSpecs with exclusive keys " + "(keys present in some but not all of the stacked specs). To use such heterogeneous specs, " + "you will need to first pass your stack through `torchrl.data.consolidate_spec`." + ) if spec is None: spec = CompositeSpec(shape=env.batch_size, device=env.device) td = last_td.select(*spec.keys(True, True), strict=True) From 7729312861cf195116e931ae4e4cd67b4f05fbc2 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Mon, 31 Jul 2023 18:40:07 +0100 Subject: [PATCH 023/148] [BugFix] Fix KLTransform execution with LSTM (#1426) --- test/test_transforms.py | 46 ++++++++++++++++++++++++++++++++- torchrl/envs/transforms/rlhf.py | 33 ++++++++++++++++++++--- 2 files changed, 74 insertions(+), 5 deletions(-) diff --git a/test/test_transforms.py b/test/test_transforms.py index ce274c56f82..8241fc8d6a2 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -93,7 +93,7 @@ from torchrl.envs.transforms.vc1 import _has_vc from torchrl.envs.transforms.vip import _VIPNet, VIPRewardTransform from torchrl.envs.utils import check_env_specs, step_mdp -from torchrl.modules import ProbabilisticActor, TanhNormal +from torchrl.modules import LSTMModule, MLP, ProbabilisticActor, TanhNormal TIMEOUT = 100.0 @@ -8027,6 +8027,50 @@ def test_transform_rb(self, rbclass): def test_transform_inverse(self): raise pytest.skip("No inverse for KLRewardTransform") + @pytest.mark.parametrize("requires_grad", [True, False]) + def test_kl_diff(self, requires_grad): + actor = self._make_actor() + t = KLRewardTransform( + actor, in_keys="reward", out_keys="reward", requires_grad=requires_grad + ) + assert t.frozen_params.requires_grad is requires_grad + + def test_kl_lstm(self): + from tensordict.nn import ( + NormalParamExtractor, + ProbabilisticTensorDictModule, + ProbabilisticTensorDictSequential, + TensorDictModule, + ) + + env = TransformedEnv(ContinuousActionVecMockEnv(), InitTracker()) + lstm_module = LSTMModule( + input_size=env.observation_spec["observation"].shape[-1], + hidden_size=2, + in_keys=["observation", "rs_h", "rs_c"], + out_keys=["intermediate", ("next", "rs_h"), ("next", "rs_c")], + ) + mlp = MLP(num_cells=[2], out_features=env.action_spec.shape[-1] * 2) + policy = ProbabilisticTensorDictSequential( + lstm_module, + TensorDictModule(mlp, in_keys=["intermediate"], out_keys=["intermediate"]), + TensorDictModule( + NormalParamExtractor(), + in_keys=["intermediate"], + out_keys=["loc", "scale"], + ), + ProbabilisticTensorDictModule( + in_keys=["loc", "scale"], + out_keys=["action"], + distribution_class=TanhNormal, + return_log_prob=True, + ), + ) + policy(env.reset()) + klt = KLRewardTransform(policy) + # check that this runs: it can only run if the params are nn.Parameter instances + klt(env.rollout(3, policy)) + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() diff --git a/torchrl/envs/transforms/rlhf.py b/torchrl/envs/transforms/rlhf.py index c9b2053f832..51b8104b4ea 100644 --- a/torchrl/envs/transforms/rlhf.py +++ b/torchrl/envs/transforms/rlhf.py @@ -5,14 +5,15 @@ from copy import deepcopy import torch - from tensordict import TensorDictBase, unravel_key from tensordict.nn import ( make_functional, ProbabilisticTensorDictModule, repopulate_module, + TensorDictParams, ) from tensordict.utils import is_seq_of_nested_key +from torch import nn from torchrl.data.tensor_specs import CompositeSpec, UnboundedContinuousTensorSpec from torchrl.envs.transforms.transforms import Transform @@ -33,6 +34,14 @@ class KLRewardTransform(Transform): reward should be fetched. Defaults to ``"reward"``. out_keys (str or list of str/tuples of str): the output key where the reward should be written. Defaults to ``"reward"``. + requires_grad (bool, optional): if ``True``, the frozen parameters will + consist of differentiable clones of the original params. + Defaults to ``False``. + + .. note:: If the parameters are not differentiable (default), they will *not* + follow the module when dtype or device casting operations will be called + (such as :meth:`~.cuda`, :meth:`~.to` etc.). When ``requires_grad=True``, + casting operations will work as expected. Examples: >>> from torchrl.envs.libs.gym import GymEnv @@ -65,8 +74,7 @@ class KLRewardTransform(Transform): >>> # check that rewards have been modified >>> assert (td.get(("next", "reward")) != td.get(("next", "reward_kl"))).all() - .. note:: - Because the KL formulat is not always available and the parameters of the + .. note:: Because the KL formulat is not always available and the parameters of the original distribution may not have been recorded, we use a stochastic estimate of the KL divergence. @@ -80,6 +88,7 @@ def __init__( coef=1.0, in_keys=None, out_keys=None, + requires_grad=False, ): if in_keys is None: in_keys = self.DEFAULT_IN_KEYS @@ -115,7 +124,23 @@ def __init__( repopulate_module(actor, params) # we need to register these params as buffer to have `to` and similar # methods work properly - self.frozen_params = params.clone().detach() + + def _make_detached_param(x): + + if isinstance(x, nn.Parameter): + # we need an nn.Parameter since some modules (RNN) require nn.Parameters + return nn.Parameter(x.data.clone(), requires_grad=requires_grad) + elif x.requires_grad: + raise ValueError( + "Encountered a value that requires gradients but is not an nn.Parameter instance." + ) + return x.clone() + + self.frozen_params = params.apply(_make_detached_param) + if requires_grad: + # includes the frozen params/buffers in the module parameters/buffers + self.frozen_params = TensorDictParams(self.frozen_params, no_convert=True) + # self._buffers["actor_params"] = params.clone().detach() # find the sample log-prob key From 09d770232709d4c48696ed0b5a53dd6679c52596 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Tue, 1 Aug 2023 10:21:43 +0100 Subject: [PATCH 024/148] [Versioning] Python 3.11 (#1433) --- .../linux_distributed/scripts/setup_env.sh | 5 +++++ .../unittest/linux_examples/scripts/run_all.sh | 5 +++++ .../linux_libs/scripts_envpool/setup_env.sh | 5 +++++ .../linux_libs/scripts_gym/batch_scripts.sh | 5 +++++ .../unittest/linux_stable/scripts/setup_env.sh | 5 +++++ .github/workflows/nightly_build.yml | 18 +++++++++--------- .github/workflows/test-linux-cpu.yml | 2 +- .github/workflows/test-macos-cpu.yml | 2 +- .github/workflows/wheels.yml | 10 +++++----- 9 files changed, 41 insertions(+), 16 deletions(-) diff --git a/.circleci/unittest/linux_distributed/scripts/setup_env.sh b/.circleci/unittest/linux_distributed/scripts/setup_env.sh index 5d17d3eaec6..501dbe1c914 100755 --- a/.circleci/unittest/linux_distributed/scripts/setup_env.sh +++ b/.circleci/unittest/linux_distributed/scripts/setup_env.sh @@ -112,6 +112,11 @@ if [[ $OSTYPE != 'darwin'* ]]; then mv ale_py-0.8.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl pip install ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl rm ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + elif [[ $PY_VERSION == *"3.11"* ]]; then + wget https://files.pythonhosted.org/packages/60/1b/3adde7f44f79fcc50d0a00a0643255e48024c4c3977359747d149dc43500/ale_py-0.8.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl + mv ale_py-0.8.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + pip install ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + rm ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl fi echo "installing gymnasium" pip install "gymnasium[atari,accept-rom-license]" diff --git a/.circleci/unittest/linux_examples/scripts/run_all.sh b/.circleci/unittest/linux_examples/scripts/run_all.sh index 4ff05b1bbee..3612d1e6743 100755 --- a/.circleci/unittest/linux_examples/scripts/run_all.sh +++ b/.circleci/unittest/linux_examples/scripts/run_all.sh @@ -115,6 +115,11 @@ elif [[ $PY_VERSION == *"3.10"* ]]; then mv ale_py-0.8.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl pip install ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl rm ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl +elif [[ $PY_VERSION == *"3.11"* ]]; then + wget https://files.pythonhosted.org/packages/60/1b/3adde7f44f79fcc50d0a00a0643255e48024c4c3977359747d149dc43500/ale_py-0.8.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl + mv ale_py-0.8.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + pip install ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + rm ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl fi pip install "gymnasium[atari,accept-rom-license]" diff --git a/.circleci/unittest/linux_libs/scripts_envpool/setup_env.sh b/.circleci/unittest/linux_libs/scripts_envpool/setup_env.sh index 3f405c584ce..bb5c09079ea 100755 --- a/.circleci/unittest/linux_libs/scripts_envpool/setup_env.sh +++ b/.circleci/unittest/linux_libs/scripts_envpool/setup_env.sh @@ -74,6 +74,11 @@ if [[ $OSTYPE != 'darwin'* ]]; then mv ale_py-0.8.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl pip install ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl rm ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + elif [[ $PY_VERSION == *"3.11"* ]]; then + wget https://files.pythonhosted.org/packages/60/1b/3adde7f44f79fcc50d0a00a0643255e48024c4c3977359747d149dc43500/ale_py-0.8.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl + mv ale_py-0.8.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + pip install ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + rm ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl fi echo "installing gym" # envpool does not currently work with gymnasium diff --git a/.circleci/unittest/linux_libs/scripts_gym/batch_scripts.sh b/.circleci/unittest/linux_libs/scripts_gym/batch_scripts.sh index abb76df994b..ee1145d3f93 100755 --- a/.circleci/unittest/linux_libs/scripts_gym/batch_scripts.sh +++ b/.circleci/unittest/linux_libs/scripts_gym/batch_scripts.sh @@ -144,6 +144,11 @@ do mv ale_py-0.8.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl pip install ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl rm ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + elif [[ $PY_VERSION == *"3.11"* ]]; then + wget https://files.pythonhosted.org/packages/60/1b/3adde7f44f79fcc50d0a00a0643255e48024c4c3977359747d149dc43500/ale_py-0.8.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl + mv ale_py-0.8.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + pip install ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + rm ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl fi pip install gymnasium[atari] else diff --git a/.circleci/unittest/linux_stable/scripts/setup_env.sh b/.circleci/unittest/linux_stable/scripts/setup_env.sh index 1d02f8ecd0c..f08d3943570 100755 --- a/.circleci/unittest/linux_stable/scripts/setup_env.sh +++ b/.circleci/unittest/linux_stable/scripts/setup_env.sh @@ -112,6 +112,11 @@ if [[ $OSTYPE != 'darwin'* ]]; then mv ale_py-0.8.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl pip install ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl rm ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + elif [[ $PY_VERSION == *"3.11"* ]]; then + wget https://files.pythonhosted.org/packages/60/1b/3adde7f44f79fcc50d0a00a0643255e48024c4c3977359747d149dc43500/ale_py-0.8.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl + mv ale_py-0.8.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + pip install ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + rm ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl fi echo "installing gymnasium" pip install "gymnasium[atari,accept-rom-license]" diff --git a/.github/workflows/nightly_build.yml b/.github/workflows/nightly_build.yml index 6dd53d93c56..80cb4dccf7d 100644 --- a/.github/workflows/nightly_build.yml +++ b/.github/workflows/nightly_build.yml @@ -34,7 +34,7 @@ jobs: runs-on: ubuntu-20.04 strategy: matrix: - python_version: [["3.8", "cp38-cp38"], ["3.9", "cp39-cp39"], ["3.10", "cp310-cp310"]] + python_version: [["3.8", "cp38-cp38"], ["3.9", "cp39-cp39"], ["3.10", "cp310-cp310"], ["3.11", "cp311-cp311"]] cuda_support: [["", "cpu", "cpu"]] container: pytorch/manylinux-cuda116 steps: @@ -73,7 +73,7 @@ jobs: runs-on: macos-latest strategy: matrix: - python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"]] + python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"], ["3.11", "3.11"]] steps: - name: Setup Python uses: actions/setup-python@v2 @@ -106,7 +106,7 @@ jobs: runs-on: macos-latest strategy: matrix: - python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"]] + python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"], ["3.11", "3.11"]] steps: - name: Setup Python uses: actions/setup-python@v2 @@ -158,7 +158,7 @@ jobs: runs-on: ubuntu-20.04 strategy: matrix: - python_version: [["3.8", "cp38-cp38"], ["3.9", "cp39-cp39"], ["3.10", "cp310-cp310"]] + python_version: [["3.8", "cp38-cp38"], ["3.9", "cp39-cp39"], ["3.10", "cp310-cp310"], ["3.11", "cp311-cp311"]] cuda_support: [["", "cpu", "cpu"]] container: pytorch/manylinux-${{ matrix.cuda_support[2] }} steps: @@ -189,7 +189,7 @@ jobs: runs-on: macos-latest strategy: matrix: - python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"]] + python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"], ["3.11", "3.11"]] steps: - name: Checkout torchrl uses: actions/checkout@v2 @@ -217,7 +217,7 @@ jobs: runs-on: ubuntu-20.04 strategy: matrix: - python_version: [["3.8", "cp38-cp38"], ["3.9", "cp39-cp39"], ["3.10", "cp310-cp310"]] + python_version: [["3.8", "cp38-cp38"], ["3.9", "cp39-cp39"], ["3.10", "cp310-cp310"], ["3.11", "cp311-cp311"]] cuda_support: [["", "cpu", "cpu"]] steps: - name: Setup Python @@ -279,7 +279,7 @@ jobs: runs-on: windows-latest strategy: matrix: - python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"]] + python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"], ["3.11", "3.11"]] steps: - name: Setup Python uses: actions/setup-python@v2 @@ -312,7 +312,7 @@ jobs: runs-on: windows-latest strategy: matrix: - python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"]] + python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"], ["3.11", "3.11"]] steps: - name: Setup Python uses: actions/setup-python@v2 @@ -369,7 +369,7 @@ jobs: runs-on: windows-latest strategy: matrix: - python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"]] + python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"], ["3.11", "3.11"]] steps: - name: Checkout torchrl uses: actions/checkout@v2 diff --git a/.github/workflows/test-linux-cpu.yml b/.github/workflows/test-linux-cpu.yml index 4b34fe8fb8b..d97d7807a59 100644 --- a/.github/workflows/test-linux-cpu.yml +++ b/.github/workflows/test-linux-cpu.yml @@ -22,7 +22,7 @@ jobs: tests: strategy: matrix: - python_version: ["3.8", "3.9", "3.10"] + python_version: ["3.8", "3.9", "3.10", "3.11"] fail-fast: false uses: pytorch/test-infra/.github/workflows/linux_job.yml@main with: diff --git a/.github/workflows/test-macos-cpu.yml b/.github/workflows/test-macos-cpu.yml index 6269a5554f3..85e67d1e117 100644 --- a/.github/workflows/test-macos-cpu.yml +++ b/.github/workflows/test-macos-cpu.yml @@ -22,7 +22,7 @@ jobs: tests: strategy: matrix: - python_version: ["3.8", "3.9", "3.10"] + python_version: ["3.8", "3.9", "3.10", "3.11"] fail-fast: false uses: pytorch/test-infra/.github/workflows/macos_job.yml@main with: diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index 2be76adc994..ca3075e7baa 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -18,7 +18,7 @@ jobs: runs-on: ubuntu-20.04 strategy: matrix: - python_version: [["3.8", "cp38-cp38"], ["3.9", "cp39-cp39"], ["3.10", "cp310-cp310"]] + python_version: [["3.8", "cp38-cp38"], ["3.9", "cp39-cp39"], ["3.10", "cp310-cp310"], ["3.11", "cp311-cp311"]] cuda_support: [["", "--extra-index-url https://download.pytorch.org/whl/cpu", "\"['cpu', '11.3', '11.6']\"", "cpu"]] container: pytorch/manylinux-${{ matrix.cuda_support[3] }} steps: @@ -56,7 +56,7 @@ jobs: runs-on: macos-latest strategy: matrix: - python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"]] + python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"], ["3.11", "3.11"]] steps: - name: Setup Python uses: actions/setup-python@v2 @@ -88,7 +88,7 @@ jobs: runs-on: windows-latest strategy: matrix: - python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"]] + python_version: [["3.8", "3.8"], ["3.9", "3.9"], ["3.10", "3.10.3"], ["3.11", "3.11"]] steps: - name: Setup Python uses: actions/setup-python@v2 @@ -122,7 +122,7 @@ jobs: strategy: matrix: os: [["linux", "ubuntu-20.04"], ["mac", "macos-latest"]] - python_version: [ "3.8", "3.9", "3.10" ] + python_version: [ "3.8", "3.9", "3.10", "3.11" ] runs-on: ${{ matrix.os[1] }} steps: - name: Setup Python @@ -172,7 +172,7 @@ jobs: needs: build-wheel-windows strategy: matrix: - python_version: [ "3.8", "3.9", "3.10" ] + python_version: [ "3.8", "3.9", "3.10", "3.11" ] runs-on: windows-latest steps: - name: Setup Python From 2d6f94952e1fe387998b3771d4d3e69d72dba0d8 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Tue, 1 Aug 2023 10:28:14 +0100 Subject: [PATCH 025/148] python 3.11 in README (#1434) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 70d474ff78d..2e89598f5e6 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ [![Benchmarks](https://img.shields.io/badge/Benchmarks-blue.svg)](https://pytorch.github.io/rl/dev/bench/) [![codecov](https://codecov.io/gh/pytorch/rl/branch/main/graph/badge.svg?token=HcpK1ILV6r)](https://codecov.io/gh/pytorch/rl) [![Twitter Follow](https://img.shields.io/twitter/follow/torchrl1?style=social)](https://twitter.com/torchrl1) -[![Python 3.7, 3.8](https://img.shields.io/badge/python-3.7%20%7C%203.8%20%7C%203.9%20%7C%203.10-blue.svg)](https://www.python.org/downloads/) +[![Python 3.8](https://img.shields.io/badge/python-3.8%20%7C%203.9%20%7C%203.10%20%7C%203.11-blue.svg)](https://www.python.org/downloads/) [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/pytorch/rl/blob/main/LICENSE) pypi version pypi nightly version From 80848353f23634af192fcb580248ff8942df7421 Mon Sep 17 00:00:00 2001 From: Steven Morad Date: Tue, 1 Aug 2023 16:14:58 +0100 Subject: [PATCH 026/148] [BugFix] Fix QValueModule multi_one_hot (#1439) --- test/test_actors.py | 14 ++++++++++++++ torchrl/modules/tensordict_module/actors.py | 10 ++++++++-- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/test/test_actors.py b/test/test_actors.py index ee358cbe25a..3cbb6d48525 100644 --- a/test/test_actors.py +++ b/test/test_actors.py @@ -266,6 +266,20 @@ def test_nested_keys(self, nested_action, batch_size, nested_dim=5): spec=action_spec, ) + @pytest.mark.parametrize( + "action_space, var_nums, expected_action", + ( + ("multi_one_hot", [2, 2, 2], [1, 0, 1, 0, 1, 0]), + ("multi_one_hot", [2, 4], [1, 0, 1, 0, 0, 0]), + ), + ) + def test_qvalue_module_multi_one_hot(self, action_space, var_nums, expected_action): + module = QValueModule(action_space=action_space, var_nums=var_nums) + in_values = torch.tensor([1.0, 0, 2, 0, 1, 0]) + action, values, chosen_action_value = module(in_values) + assert (torch.tensor(expected_action, dtype=torch.long) == action).all() + assert (values == in_values).all() + @pytest.mark.parametrize( "action_space, expected_action", ( diff --git a/torchrl/modules/tensordict_module/actors.py b/torchrl/modules/tensordict_module/actors.py index 59688b68feb..1cd6745826a 100644 --- a/torchrl/modules/tensordict_module/actors.py +++ b/torchrl/modules/tensordict_module/actors.py @@ -468,11 +468,17 @@ def _one_hot(value: torch.Tensor) -> torch.Tensor: def _categorical(value: torch.Tensor) -> torch.Tensor: return torch.argmax(value, dim=-1).to(torch.long) - def _mult_one_hot(self, value: torch.Tensor, support: torch.Tensor) -> torch.Tensor: + def _mult_one_hot( + self, value: torch.Tensor, support: torch.Tensor = None + ) -> torch.Tensor: + if self.var_nums is None: + raise ValueError( + "var_nums must be provided to the constructor for multi one-hot action spaces." + ) values = value.split(self.var_nums, dim=-1) return torch.cat( [ - QValueHook._one_hot( + self._one_hot( _value, ) for _value in values From 7d8a8ba784cf035ea9ab400c50c08af527a35c55 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Fri, 4 Aug 2023 09:37:29 +0100 Subject: [PATCH 027/148] [Feature] Optional mapping of "state" in gym specs (#1431) Signed-off-by: Matteo Bettini --- torchrl/envs/libs/gym.py | 23 +++++++++++++++++++---- torchrl/envs/libs/vmas.py | 2 ++ 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/torchrl/envs/libs/gym.py b/torchrl/envs/libs/gym.py index 3a15d865602..d179bffa805 100644 --- a/torchrl/envs/libs/gym.py +++ b/torchrl/envs/libs/gym.py @@ -179,12 +179,21 @@ def gym_backend(submodule=None): def _gym_to_torchrl_spec_transform( - spec, dtype=None, device="cpu", categorical_action_encoding=False + spec, + dtype=None, + device="cpu", + categorical_action_encoding=False, + remap_state_to_observation: bool = True, ) -> TensorSpec: """Maps the gym specs to the TorchRL specs. - By convention, 'state' keys of Dict specs will be renamed "observation" to match the - default TorchRL keys. + Args: + spec: the gym space to transform + dtype: a dtype to use for the spec. Defaults to`spec.dtype`. + device: the device for the spec. Defaults to "cpu". + categorical_action_encoding: whether discrete spaces should be mapped to categorical or one-hot. + Defaults to one-hot. + remap_state_to_observation: whether to rename the 'state' key of Dict specs to "observation". Default is true. """ gym = gym_backend() @@ -241,7 +250,11 @@ def _gym_to_torchrl_spec_transform( spec_out = {} for k in spec.keys(): key = k - if k == "state" and "observation" not in spec.keys(): + if ( + remap_state_to_observation + and k == "state" + and "observation" not in spec.keys() + ): # we rename "state" in "observation" as "observation" is the conventional name # for single observation in torchrl. # naming it 'state' will result in envs that have a different name for the state vector @@ -251,6 +264,7 @@ def _gym_to_torchrl_spec_transform( spec[k], device=device, categorical_action_encoding=categorical_action_encoding, + remap_state_to_observation=remap_state_to_observation, ) return CompositeSpec(**spec_out) elif isinstance(spec, gym.spaces.dict.Dict): @@ -258,6 +272,7 @@ def _gym_to_torchrl_spec_transform( spec.spaces, device=device, categorical_action_encoding=categorical_action_encoding, + remap_state_to_observation=remap_state_to_observation, ) else: raise NotImplementedError( diff --git a/torchrl/envs/libs/vmas.py b/torchrl/envs/libs/vmas.py index 45fcce765c0..117475d2f45 100644 --- a/torchrl/envs/libs/vmas.py +++ b/torchrl/envs/libs/vmas.py @@ -164,12 +164,14 @@ def _make_specs( self.action_space[agent_index], categorical_action_encoding=True, device=self.device, + remap_state_to_observation=False, ) ) # shape = (n_actions_per_agent,) observation_specs.append( _gym_to_torchrl_spec_transform( self.observation_space[agent_index], device=self.device, + remap_state_to_observation=False, ) ) # shape = (n_obs_per_agent,) reward_specs.append( From a85a2a77e21783a68e1677f111fa65552c85e70c Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 4 Aug 2023 14:05:44 +0100 Subject: [PATCH 028/148] [BugFix] Fix split_trajs (#1444) --- torchrl/collectors/utils.py | 14 ++++++++++++-- torchrl/data/datasets/d4rl.py | 7 +++---- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/torchrl/collectors/utils.py b/torchrl/collectors/utils.py index ccc7b89809c..f797144d344 100644 --- a/torchrl/collectors/utils.py +++ b/torchrl/collectors/utils.py @@ -63,10 +63,20 @@ def split_trajectories( ) done = done | truncated if traj_ids is None: - traj_ids = done.cumsum(rollout_tensordict.ndim - 1) + idx = (slice(None),) * (rollout_tensordict.ndim - 1) + (slice(None, -1),) + done_sel = done[idx] + pads = [1, 0] + pads = [0, 0] * (done.ndim - rollout_tensordict.ndim) + pads + done_sel = torch.nn.functional.pad(done_sel, pads) + if done_sel.shape != done.shape: + raise RuntimeError( + f"done and done_sel have different shape {done.shape} - {done_sel.shape} " + ) + traj_ids = done_sel.cumsum(rollout_tensordict.ndim - 1) + traj_ids = traj_ids.squeeze(-1) if rollout_tensordict.ndim > 1: for i in range(1, rollout_tensordict.shape[0]): - traj_ids[i] += traj_ids[i - 1].max() + traj_ids[i] += traj_ids[i - 1].max() + 1 rollout_tensordict.set(traj_ids_key, traj_ids) splits = traj_ids.view(-1) diff --git a/torchrl/data/datasets/d4rl.py b/torchrl/data/datasets/d4rl.py index d6c32083e23..cd199eb8acc 100644 --- a/torchrl/data/datasets/d4rl.py +++ b/torchrl/data/datasets/d4rl.py @@ -186,11 +186,10 @@ def _get_dataset_direct(self, name, env_kwargs): if "timeouts" in dataset.keys(): dataset.rename_key("timeouts", "timeout") if self.use_timeout_as_done: - dataset.set( - "done", - dataset.get("terminal") - | dataset.get("timeout", torch.zeros((), dtype=torch.bool)), + done = dataset.get("terminal") | dataset.get( + "timeout", torch.zeros((), dtype=torch.bool) ) + dataset.set("done", done) else: dataset.set("done", dataset.get("terminal")) dataset.rename_key("rewards", "reward") From 9cf41c4b95e80006041d39dc4db638588ff83cc2 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 4 Aug 2023 14:20:34 +0100 Subject: [PATCH 029/148] [Test] Test split trajs (#1445) --- test/test_postprocs.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/test/test_postprocs.py b/test/test_postprocs.py index e28ee2eb592..c7faa8df1a8 100644 --- a/test/test_postprocs.py +++ b/test/test_postprocs.py @@ -320,6 +320,19 @@ def test_splits(self, num_workers, traj_len): == split_trajs.get(("collector", "traj_ids")).max() + 1 ) + @pytest.mark.parametrize("num_workers", range(3, 34, 3)) + @pytest.mark.parametrize("traj_len", [10, 17, 50, 97]) + def test_splits_notraj(self, num_workers, traj_len): + + trajs = TestSplits.create_fake_trajs(num_workers, traj_len) + trajs_pop = trajs.clone() + del trajs_pop[("collector", "traj_ids")] + split_trajs = split_trajectories(trajs, prefix="collector") + split_trajs_pop = split_trajectories(trajs_pop, prefix="collector") + del split_trajs[("collector", "traj_ids")] + del split_trajs_pop[("collector", "traj_ids")] + assert (split_trajs == split_trajs_pop).all() + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() From a5335f35411a0b501d082ba97f58d51a007d8ac1 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Fri, 4 Aug 2023 15:16:06 +0100 Subject: [PATCH 030/148] [Feature] Heterogeneous Environments compatibility (#1411) Signed-off-by: Matteo Bettini Co-authored-by: vmoens --- test/mocking_classes.py | 195 ++++++++++++++++++++++++++++++++++++- test/test_env.py | 206 +++++++++++++++++++++++++++++++++++++++- test/test_utils.py | 1 + torchrl/data/utils.py | 1 + torchrl/envs/common.py | 1 + torchrl/envs/utils.py | 92 +++++++++++------- 6 files changed, 459 insertions(+), 37 deletions(-) diff --git a/test/mocking_classes.py b/test/mocking_classes.py index 6d5107fcc64..1af0ba59c6c 100644 --- a/test/mocking_classes.py +++ b/test/mocking_classes.py @@ -7,7 +7,7 @@ import torch import torch.nn as nn from tensordict.tensordict import TensorDict, TensorDictBase -from tensordict.utils import NestedKey +from tensordict.utils import expand_right, NestedKey from torchrl.data.tensor_specs import ( BinaryDiscreteTensorSpec, @@ -19,6 +19,7 @@ TensorSpec, UnboundedContinuousTensorSpec, ) +from torchrl.data.utils import consolidate_spec from torchrl.envs.common import EnvBase from torchrl.envs.model_based.common import ModelBasedEnvBase @@ -1290,3 +1291,195 @@ def _step( device=self.device, ) return tensordict.select().set("next", tensordict) + + +class HeteroCountingEnvPolicy: + def __init__(self, full_action_spec: TensorSpec, count: bool = True): + self.full_action_spec = full_action_spec + self.count = count + + def __call__(self, td: TensorDictBase) -> TensorDictBase: + action_td = self.full_action_spec.zero() + if self.count: + action_td.apply_(lambda x: x + 1) + return td.update(action_td) + + +class HeteroCountingEnv(EnvBase): + """A heterogeneous, counting Env.""" + + def __init__(self, max_steps: int = 5, start_val: int = 0, **kwargs): + super().__init__(**kwargs) + self.n_nested_dim = 3 + self.max_steps = max_steps + self.start_val = start_val + + count = torch.zeros((*self.batch_size, 1), device=self.device, dtype=torch.int) + count[:] = self.start_val + + self.register_buffer("count", count) + + obs_specs = [] + action_specs = [] + for index in range(self.n_nested_dim): + obs_specs.append(self.get_agent_obs_spec(index)) + action_specs.append(self.get_agent_action_spec(index)) + obs_specs = torch.stack(obs_specs, dim=0) + obs_spec_unlazy = consolidate_spec(obs_specs) + action_specs = torch.stack(action_specs, dim=0) + + self.unbatched_observation_spec = CompositeSpec( + lazy=obs_spec_unlazy, + state=UnboundedContinuousTensorSpec( + shape=( + 64, + 64, + 3, + ) + ), + ) + + self.unbatched_action_spec = CompositeSpec( + lazy=action_specs, + ) + self.unbatched_reward_spec = CompositeSpec( + { + "lazy": CompositeSpec( + { + "reward": UnboundedContinuousTensorSpec( + shape=(self.n_nested_dim, 1) + ) + }, + shape=(self.n_nested_dim,), + ) + } + ) + self.unbatched_done_spec = CompositeSpec( + { + "lazy": CompositeSpec( + { + "done": DiscreteTensorSpec( + n=2, + shape=(self.n_nested_dim, 1), + dtype=torch.bool, + ), + }, + shape=(self.n_nested_dim,), + ) + } + ) + + self.action_spec = self.unbatched_action_spec.expand( + *self.batch_size, *self.unbatched_action_spec.shape + ) + self.observation_spec = self.unbatched_observation_spec.expand( + *self.batch_size, *self.unbatched_observation_spec.shape + ) + self.reward_spec = self.unbatched_reward_spec.expand( + *self.batch_size, *self.unbatched_reward_spec.shape + ) + self.done_spec = self.unbatched_done_spec.expand( + *self.batch_size, *self.unbatched_done_spec.shape + ) + + def get_agent_obs_spec(self, i): + camera = BoundedTensorSpec(minimum=0, maximum=200, shape=(7, 7, 3)) + vector_3d = UnboundedContinuousTensorSpec(shape=(3,)) + vector_2d = UnboundedContinuousTensorSpec(shape=(2,)) + lidar = BoundedTensorSpec(minimum=0, maximum=5, shape=(8,)) + + tensor_0 = UnboundedContinuousTensorSpec(shape=(1,)) + tensor_1 = BoundedTensorSpec(minimum=0, maximum=3, shape=(1, 2)) + tensor_2 = UnboundedContinuousTensorSpec(shape=(1, 2, 3)) + + if i == 0: + return CompositeSpec( + { + "camera": camera, + "lidar": lidar, + "vector": vector_3d, + "tensor_0": tensor_0, + } + ) + elif i == 1: + return CompositeSpec( + { + "camera": camera, + "lidar": lidar, + "vector": vector_2d, + "tensor_1": tensor_1, + } + ) + elif i == 2: + return CompositeSpec( + { + "camera": camera, + "vector": vector_2d, + "tensor_2": tensor_2, + } + ) + else: + raise ValueError(f"Index {i} undefined for index 3") + + def get_agent_action_spec(self, i): + action_3d = BoundedTensorSpec(minimum=-1, maximum=1, shape=(3,)) + action_2d = BoundedTensorSpec(minimum=-1, maximum=1, shape=(2,)) + + # Some have 2d action and some 3d + # TODO Introduce composite heterogeneous actions + if i == 0: + ret = action_3d + elif i == 1: + ret = action_2d + elif i == 2: + ret = action_2d + else: + raise ValueError(f"Index {i} undefined for index 3") + + return CompositeSpec({"action": ret}) + + def _reset( + self, + tensordict: TensorDictBase = None, + **kwargs, + ) -> TensorDictBase: + if tensordict is not None and "_reset" in tensordict.keys(): + _reset = tensordict.get("_reset").squeeze(-1).any(-1) + self.count[_reset] = self.start_val + else: + self.count[:] = self.start_val + + reset_td = self.observation_spec.zero() + reset_td.apply_(lambda x: x + expand_right(self.count, x.shape)) + reset_td.update(self.output_spec["_done_spec"].zero()) + + assert reset_td.batch_size == self.batch_size + + return reset_td + + def _step( + self, + tensordict: TensorDictBase, + ) -> TensorDictBase: + actions = torch.zeros_like(self.count.squeeze(-1), dtype=torch.bool) + for i in range(self.n_nested_dim): + action = tensordict["lazy"][..., i]["action"] + action = action[..., 0].to(torch.bool) + actions += action + + self.count += actions.unsqueeze(-1).to(torch.int) + + td = self.observation_spec.zero() + td.apply_(lambda x: x + expand_right(self.count, x.shape)) + td.update(self.output_spec["_done_spec"].zero()) + td.update(self.output_spec["_reward_spec"].zero()) + + assert td.batch_size == self.batch_size + td[self.done_key] = expand_right( + self.count > self.max_steps, self.done_spec.shape + ) + + return td.select().set("next", td) + + def _set_seed(self, seed: Optional[int]): + torch.manual_seed(seed) diff --git a/test/test_env.py b/test/test_env.py index a52f140fcd7..49604665563 100644 --- a/test/test_env.py +++ b/test/test_env.py @@ -33,14 +33,17 @@ DiscreteActionConvMockEnvNumpy, DiscreteActionVecMockEnv, DummyModelBasedEnvBase, + HeteroCountingEnv, + HeteroCountingEnvPolicy, MockBatchedLockedEnv, MockBatchedUnLockedEnv, MockSerialEnv, NestedCountingEnv, ) from packaging import version +from tensordict import dense_stack_tds from tensordict.nn import TensorDictModuleBase -from tensordict.tensordict import assert_allclose_td, TensorDict +from tensordict.tensordict import assert_allclose_td, LazyStackedTensorDict, TensorDict from torch import nn from torchrl.collectors import MultiSyncDataCollector, SyncDataCollector @@ -1383,6 +1386,146 @@ def test_nested_partially( assert nested_key[0] not in td_keys assert (td[other_key] == 0).all() + @pytest.mark.parametrize("het_action", [True, False]) + @pytest.mark.parametrize("het_done", [True, False]) + @pytest.mark.parametrize("het_reward", [True, False]) + @pytest.mark.parametrize("het_other", [True, False]) + @pytest.mark.parametrize("het_obs", [True, False]) + @pytest.mark.parametrize("exclude_reward", [True, False]) + @pytest.mark.parametrize("exclude_done", [True, False]) + @pytest.mark.parametrize("exclude_action", [True, False]) + @pytest.mark.parametrize("keep_other", [True, False]) + def test_heterogeenous( + self, + het_action, + het_done, + het_reward, + het_other, + het_obs, + exclude_reward, + exclude_done, + exclude_action, + keep_other, + ): + td_batch_size = 4 + nested_dim = 3 + nested_batch_size = (td_batch_size, nested_dim) + nested_key = ("data",) + + reward_key = "reward" + nested_reward_key = nested_key + (reward_key,) + done_key = "done" + nested_done_key = nested_key + (done_key,) + action_key = "action" + nested_action_key = nested_key + (action_key,) + obs_key = "state" + nested_obs_key = nested_key + (obs_key,) + other_key = "beatles" + nested_other_key = nested_key + (other_key,) + + tds = [] + for i in range(1, nested_dim + 1): + tds.append( + TensorDict( + { + nested_key: TensorDict( + { + reward_key: torch.zeros( + td_batch_size, i if het_reward else 1 + ), + done_key: torch.zeros( + td_batch_size, i if het_done else 1 + ), + action_key: torch.zeros( + td_batch_size, i if het_action else 1 + ), + obs_key: torch.zeros( + td_batch_size, i if het_obs else 1 + ), + other_key: torch.zeros( + td_batch_size, i if het_other else 1 + ), + }, + [td_batch_size], + ), + "next": { + nested_key: TensorDict( + { + reward_key: torch.ones( + td_batch_size, i if het_reward else 1 + ), + done_key: torch.ones( + td_batch_size, i if het_done else 1 + ), + obs_key: torch.ones( + td_batch_size, i if het_obs else 1 + ), + }, + [td_batch_size], + ), + }, + }, + [td_batch_size], + ) + ) + lazy_td = torch.stack(tds, dim=1) + input_td = lazy_td + + td = step_mdp( + lazy_td.lock_(), + exclude_reward=exclude_reward, + exclude_done=exclude_done, + exclude_action=exclude_action, + reward_key=nested_reward_key, + done_key=nested_done_key, + action_key=nested_action_key, + keep_other=keep_other, + ) + td_nested_keys = td.keys(True, True) + td_keys = td.keys() + for i in range(nested_dim): + if het_obs: + assert td[..., i][nested_obs_key].shape == (td_batch_size, i + 1) + else: + assert td[..., i][nested_obs_key].shape == (td_batch_size, 1) + assert (td[..., i][nested_obs_key] == 1).all() + if exclude_reward: + assert nested_reward_key not in td_keys + else: + for i in range(nested_dim): + if het_reward: + assert td[..., i][nested_reward_key].shape == (td_batch_size, i + 1) + else: + assert td[..., i][nested_reward_key].shape == (td_batch_size, 1) + assert (td[..., i][nested_reward_key] == 1).all() + if exclude_done: + assert nested_done_key not in td_keys + else: + for i in range(nested_dim): + if het_done: + assert td[..., i][nested_done_key].shape == (td_batch_size, i + 1) + else: + assert td[..., i][nested_done_key].shape == (td_batch_size, 1) + assert (td[..., i][nested_done_key] == 1).all() + if exclude_action: + assert nested_action_key not in td_keys + else: + for i in range(nested_dim): + if het_action: + assert td[..., i][nested_action_key].shape == (td_batch_size, i + 1) + else: + assert td[..., i][nested_action_key].shape == (td_batch_size, 1) + assert (td[..., i][nested_action_key] == 0).all() + if not keep_other: + assert nested_other_key not in td_keys + else: + for i in range(nested_dim): + if het_other: + assert td[..., i][nested_other_key].shape == (td_batch_size, i + 1) + else: + assert td[..., i][nested_other_key].shape == (td_batch_size, 1) + assert (td[..., i][nested_other_key] == 0).all() + @pytest.mark.parametrize("device", get_default_devices()) def test_batch_locked(device): @@ -1669,7 +1812,6 @@ def test_mp_collector(self, nproc): class TestNestedSpecs: @pytest.mark.parametrize("envclass", ["CountingEnv", "NestedCountingEnv"]) def test_nested_env(self, envclass): - if envclass == "CountingEnv": env = CountingEnv() elif envclass == "NestedCountingEnv": @@ -1700,7 +1842,6 @@ def test_nested_env(self, envclass): @pytest.mark.parametrize("batch_size", [(), (32,), (32, 1)]) def test_nested_env_dims(self, batch_size, nested_dim=5, rollout_length=3): - env = NestedCountingEnv(batch_size=batch_size, nested_dim=nested_dim) td_reset = env.reset() @@ -1750,6 +1891,62 @@ def test_nested_env_dims(self, batch_size, nested_dim=5, rollout_length=3): ) +class TestHeteroEnvs: + @pytest.mark.parametrize("batch_size", [(), (32,), (1, 2)]) + def test_reset(self, batch_size): + env = HeteroCountingEnv(batch_size=batch_size) + env.reset() + + @pytest.mark.parametrize("batch_size", [(), (32,), (1, 2)]) + def test_rand_step(self, batch_size): + env = HeteroCountingEnv(batch_size=batch_size) + td = env.reset() + assert (td["lazy"][..., 0]["tensor_0"] == 0).all() + td = env.rand_step() + assert (td["next", "lazy"][..., 0]["tensor_0"] == 1).all() + td = env.rand_step() + assert (td["next", "lazy"][..., 1]["tensor_1"] == 2).all() + + @pytest.mark.parametrize("batch_size", [(), (2,), (2, 1)]) + @pytest.mark.parametrize("rollout_steps", [1, 2, 5]) + def test_rollout(self, batch_size, rollout_steps, n_lazy_dim=3): + env = HeteroCountingEnv(batch_size=batch_size) + td = env.rollout(rollout_steps, return_contiguous=False) + td = dense_stack_tds(td) + + assert isinstance(td, TensorDict) + assert td.batch_size == (*batch_size, rollout_steps) + + assert isinstance(td["lazy"], LazyStackedTensorDict) + assert td["lazy"].shape == (*batch_size, rollout_steps, n_lazy_dim) + assert td["lazy"].stack_dim == len(td["lazy"].batch_size) - 1 + + assert (td[..., -1]["next", "state"] == rollout_steps).all() + assert (td[..., -1]["next", "lazy", "camera"] == rollout_steps).all() + assert ( + td["lazy"][(0,) * len(batch_size)][..., 0]["tensor_0"].squeeze(-1) + == torch.arange(rollout_steps) + ).all() + + @pytest.mark.parametrize("batch_size", [(), (2,), (2, 1)]) + @pytest.mark.parametrize("rollout_steps", [1, 2, 5]) + @pytest.mark.parametrize("count", [True, False]) + def test_rollout_policy(self, batch_size, rollout_steps, count): + env = HeteroCountingEnv(batch_size=batch_size) + policy = HeteroCountingEnvPolicy(env.input_spec["_action_spec"], count=count) + td = env.rollout(rollout_steps, policy=policy, return_contiguous=False) + td = dense_stack_tds(td) + for i in range(env.n_nested_dim): + if count: + agent_obs = td["lazy"][(0,) * len(batch_size)][..., i][f"tensor_{i}"] + for _ in range(i + 1): + agent_obs = agent_obs.mean(-1) + assert (agent_obs == torch.arange(rollout_steps)).all() + assert (td["lazy"][..., i]["action"] == 1).all() + else: + assert (td["lazy"][..., i]["action"] == 0).all() + + @pytest.mark.parametrize( "envclass", [ @@ -1768,6 +1965,7 @@ def test_nested_env_dims(self, batch_size, nested_dim=5, rollout_length=3): MockBatchedUnLockedEnv, MockSerialEnv, NestedCountingEnv, + HeteroCountingEnv, ], ) def test_mocking_envs(envclass): @@ -1775,7 +1973,7 @@ def test_mocking_envs(envclass): env.set_seed(100) reset = env.reset() _ = env.rand_step(reset) - check_env_specs(env, seed=100) + check_env_specs(env, seed=100, return_contiguous=False) if __name__ == "__main__": diff --git a/test/test_utils.py b/test/test_utils.py index 6a44226d780..87a16b89216 100644 --- a/test/test_utils.py +++ b/test/test_utils.py @@ -12,6 +12,7 @@ import pytest from torchrl._utils import get_binary_env_var, implement_for + from torchrl.envs.libs.gym import gym_backend, set_gym_backend diff --git a/torchrl/data/utils.py b/torchrl/data/utils.py index b2c4a7bbadc..67756660856 100644 --- a/torchrl/data/utils.py +++ b/torchrl/data/utils.py @@ -8,6 +8,7 @@ import numpy as np import torch + from torch import Tensor from torchrl.data.tensor_specs import ( diff --git a/torchrl/envs/common.py b/torchrl/envs/common.py index 15168f20411..8453664dc43 100644 --- a/torchrl/envs/common.py +++ b/torchrl/envs/common.py @@ -1259,6 +1259,7 @@ def policy(td): _reset = done.clone() tensordict.set("_reset", _reset) self.reset(tensordict) + del tensordict["_reset"] if callback is not None: callback(self, tensordict) diff --git a/torchrl/envs/utils.py b/torchrl/envs/utils.py index 7852f6509f9..1f671dda1b2 100644 --- a/torchrl/envs/utils.py +++ b/torchrl/envs/utils.py @@ -5,6 +5,7 @@ from __future__ import annotations import importlib.util +import re import torch @@ -219,44 +220,71 @@ def _set_single_key(source, dest, key, clone=False): if isinstance(key, str): key = (key,) for k in key: - val = source.get(k) - if is_tensor_collection(val): - new_val = dest.get(k, None) - if new_val is None: - new_val = val.empty() - # dest.set(k, new_val) - dest._set_str(k, new_val, inplace=False, validated=True) - source = val - dest = new_val - else: - if clone: - val = val.clone() - # dest.set(k, val) - dest._set_str(k, val, inplace=False, validated=True) + try: + val = source.get(k) + if is_tensor_collection(val): + new_val = dest.get(k, None) + if new_val is None: + new_val = val.empty() + # dest.set(k, new_val) + dest._set_str(k, new_val, inplace=False, validated=True) + source = val + dest = new_val + else: + if clone: + val = val.clone() + # dest.set(k, val) + dest._set_str(k, val, inplace=False, validated=True) + # This is a temporary solution to understand if a key is heterogeneous + # while not having performance impact when the exception is not raised + except RuntimeError as err: + if re.match(r"Found more than one unique shape in the tensors", str(err)): + # this is a het key + for s_td, d_td in zip(source.tensordicts, dest.tensordicts): + _set_single_key(s_td, d_td, k, clone) + break + else: + raise err def _set(source, dest, key, total_key, excluded): total_key = total_key + (key,) non_empty = False if unravel_key(total_key) not in excluded: - val = source.get(key) - if is_tensor_collection(val): - new_val = dest.get(key, None) - if new_val is None: - new_val = val.empty() - non_empty_local = False - for subkey in val.keys(): - non_empty_local = ( - _set(val, new_val, subkey, total_key, excluded) or non_empty_local - ) - if non_empty_local: - # dest.set(key, new_val) - dest._set_str(key, new_val, inplace=False, validated=True) - non_empty = non_empty_local - else: - non_empty = True - # dest.set(key, val) - dest._set_str(key, val, inplace=False, validated=True) + try: + val = source.get(key) + if is_tensor_collection(val): + new_val = dest.get(key, None) + if new_val is None: + new_val = val.empty() + non_empty_local = False + for subkey in val.keys(): + non_empty_local = ( + _set(val, new_val, subkey, total_key, excluded) + or non_empty_local + ) + if non_empty_local: + # dest.set(key, new_val) + dest._set_str(key, new_val, inplace=False, validated=True) + non_empty = non_empty_local + else: + non_empty = True + # dest.set(key, val) + dest._set_str(key, val, inplace=False, validated=True) + # This is a temporary solution to understand if a key is heterogeneous + # while not having performance impact when the exception is not raised + except RuntimeError as err: + if re.match(r"Found more than one unique shape in the tensors", str(err)): + # this is a het key + non_empty_local = False + for s_td, d_td in zip(source.tensordicts, dest.tensordicts): + non_empty_local = ( + _set(s_td, d_td, key, total_key, excluded) or non_empty_local + ) + non_empty = non_empty_local + else: + raise err + return non_empty From 99268ae170452a81d0b00904ce045b7fc71f1845 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Fri, 4 Aug 2023 17:16:02 +0100 Subject: [PATCH 031/148] [Tests] Collector compatibility for heterogeneous environments (#1414) --- test/test_collector.py | 84 ++++++++++++++++++++++++++++ test/test_libs.py | 67 +++++++++++++++++++--- torchrl/envs/libs/vmas.py | 115 ++++++++++++++++++++------------------ 3 files changed, 205 insertions(+), 61 deletions(-) diff --git a/test/test_collector.py b/test/test_collector.py index 607f09d635a..0d019b57844 100644 --- a/test/test_collector.py +++ b/test/test_collector.py @@ -19,6 +19,8 @@ DiscreteActionConvPolicy, DiscreteActionVecMockEnv, DiscreteActionVecPolicy, + HeteroCountingEnv, + HeteroCountingEnvPolicy, MockSerialEnv, NestedCountingEnv, ) @@ -1468,6 +1470,88 @@ def test_nested_env_dims(self, batch_size, nested_dim=5, frames_per_batch=20): ) +class TestHetEnvsCollector: + @pytest.mark.parametrize("batch_size", [(), (2,), (2, 1)]) + @pytest.mark.parametrize("frames_per_batch", [4, 8, 16]) + def test_collector_het_env(self, batch_size, frames_per_batch, seed=1, max_steps=4): + batch_size = torch.Size(batch_size) + env = HeteroCountingEnv(max_steps=max_steps - 1, batch_size=batch_size) + torch.manual_seed(seed) + policy = HeteroCountingEnvPolicy(env.input_spec["_action_spec"]) + ccollector = SyncDataCollector( + create_env_fn=env, + policy=policy, + frames_per_batch=frames_per_batch, + total_frames=100, + device="cpu", + ) + + for _td in ccollector: + break + ccollector.shutdown() + collected_frames = frames_per_batch // batch_size.numel() + + for i in range(env.n_nested_dim): + if collected_frames >= max_steps: + agent_obs = _td["lazy"][(0,) * len(batch_size)][..., i][f"tensor_{i}"] + for _ in range(i + 1): + agent_obs = agent_obs.mean(-1) + assert ( + agent_obs + == torch.arange(max_steps).repeat(collected_frames // max_steps) + ).all() # Check reset worked + assert (_td["lazy"][..., i]["action"] == 1).all() + + def test_multi_collector_het_env_consistency( + self, seed=1, frames_per_batch=20, batch_dim=10 + ): + env = HeteroCountingEnv(max_steps=3, batch_size=(batch_dim,)) + torch.manual_seed(seed) + env_fn = lambda: TransformedEnv(env, InitTracker()) + policy = HeteroCountingEnvPolicy(env.input_spec["_action_spec"]) + + ccollector = MultiaSyncDataCollector( + create_env_fn=[env_fn], + policy=policy, + frames_per_batch=frames_per_batch, + total_frames=100, + device="cpu", + ) + for i, d in enumerate(ccollector): + if i == 0: + c1 = d + elif i == 1: + c2 = d + else: + break + assert d.names[-1] == "time" + with pytest.raises(AssertionError): + assert_allclose_td(c1, c2) + ccollector.shutdown() + + ccollector = MultiSyncDataCollector( + create_env_fn=[env_fn], + policy=policy, + frames_per_batch=frames_per_batch, + total_frames=100, + device="cpu", + ) + for i, d in enumerate(ccollector): + if i == 0: + d1 = d + elif i == 1: + d2 = d + else: + break + assert d.names[-1] == "time" + with pytest.raises(AssertionError): + assert_allclose_td(d1, d2) + ccollector.shutdown() + + assert_allclose_td(c1, d1) + assert_allclose_td(c2, d2) + + @pytest.mark.skipif(not torch.cuda.device_count(), reason="No casting if no cuda") class TestUpdateParams: class DummyEnv(EnvBase): diff --git a/test/test_libs.py b/test/test_libs.py index addd4def125..29149c03c6f 100644 --- a/test/test_libs.py +++ b/test/test_libs.py @@ -23,6 +23,7 @@ PONG_VERSIONED, ) from packaging import version +from tensordict import LazyStackedTensorDict from tensordict.tensordict import assert_allclose_td, TensorDict from torch import nn from torchrl._utils import implement_for @@ -1102,7 +1103,8 @@ def test_vmas_batch_size_error(self, scenario_name, batch_size): @pytest.mark.parametrize("num_envs", [1, 20]) @pytest.mark.parametrize("n_agents", [1, 5]) @pytest.mark.parametrize( - "scenario_name", ["simple_reference", "waterfall", "flocking", "discovery"] + "scenario_name", + ["simple_reference", "simple_tag", "waterfall", "flocking", "discovery"], ) def test_vmas_batch_size(self, scenario_name, num_envs, n_agents): torch.manual_seed(0) @@ -1114,15 +1116,31 @@ def test_vmas_batch_size(self, scenario_name, num_envs, n_agents): ) env.set_seed(0) tdreset = env.reset() - tdrollout = env.rollout(max_steps=n_rollout_samples) + tdrollout = env.rollout( + max_steps=n_rollout_samples, + return_contiguous=False if env.het_specs else True, + ) env.close() + if env.het_specs: + assert isinstance(tdreset["agents"], LazyStackedTensorDict) + else: + assert isinstance(tdreset["agents"], TensorDict) + assert tdreset.batch_size == (num_envs,) - assert tdreset["agents", "observation"].shape[1] == env.n_agents + assert tdreset["agents"].batch_size == (num_envs, env.n_agents) + if not env.het_specs: + assert tdreset["agents", "observation"].shape[1] == env.n_agents assert tdreset["done"].shape[1] == 1 assert tdrollout.batch_size == (num_envs, n_rollout_samples) - assert tdrollout["agents", "observation"].shape[2] == env.n_agents + assert tdrollout["agents"].batch_size == ( + num_envs, + n_rollout_samples, + env.n_agents, + ) + if not env.het_specs: + assert tdrollout["agents", "observation"].shape[2] == env.n_agents assert tdrollout["next", "agents", "reward"].shape[2] == env.n_agents assert tdrollout["agents", "action"].shape[2] == env.n_agents assert tdrollout["done"].shape[2] == 1 @@ -1132,7 +1150,8 @@ def test_vmas_batch_size(self, scenario_name, num_envs, n_agents): @pytest.mark.parametrize("n_agents", [1, 5]) @pytest.mark.parametrize("continuous_actions", [True, False]) @pytest.mark.parametrize( - "scenario_name", ["simple_reference", "waterfall", "flocking", "discovery"] + "scenario_name", + ["simple_reference", "simple_tag", "waterfall", "flocking", "discovery"], ) def test_vmas_spec_rollout( self, scenario_name, num_envs, n_agents, continuous_actions @@ -1153,7 +1172,7 @@ def test_vmas_spec_rollout( ) for e in [env, wrapped]: e.set_seed(0) - check_env_specs(e) + check_env_specs(e, return_contiguous=False if e.het_specs else True) del e @pytest.mark.parametrize("num_envs", [1, 20]) @@ -1287,7 +1306,6 @@ def make_vmas(): @pytest.mark.parametrize("n_workers", [1, 2]) @pytest.mark.parametrize("n_agents", [1, 3]) def test_collector(self, n_envs, n_workers, n_agents, frames_per_batch=80): - torch.manual_seed(1) env_fun = lambda: VmasEnv( scenario="flocking", num_envs=n_envs, n_agents=n_agents, max_steps=7 @@ -1348,6 +1366,41 @@ def test_collector(self, n_envs, n_workers, n_agents, frames_per_batch=80): assert env.reward_key not in _td.keys(True, True) assert env.action_key not in _td["next"].keys(True, True) + def test_collector_hetero(self, n_envs=10, frames_per_batch=20): + env = VmasEnv( + scenario="simple_tag", + num_envs=n_envs, + ) + torch.manual_seed(1) + + ccollector = SyncDataCollector( + create_env_fn=env, + policy=None, + frames_per_batch=frames_per_batch, + total_frames=1000, + device="cpu", + ) + + for i, _td in enumerate(ccollector): + if i == 1: + break + ccollector.shutdown() + + td_batch = (n_envs, frames_per_batch // n_envs) + agents_td_batch = td_batch + (env.n_agents,) + + assert _td.shape == td_batch + assert _td["next"].shape == td_batch + assert _td["agents"].shape == agents_td_batch + assert _td["next", "agents"].shape == agents_td_batch + assert _td["collector"].shape == td_batch + assert _td["next", env.reward_key].shape == agents_td_batch + (1,) + assert _td[env.done_key].shape == td_batch + (1,) + assert _td["next", env.done_key].shape == td_batch + (1,) + + assert env.reward_key not in _td.keys(True, True) + assert env.action_key not in _td["next"].keys(True, True) + @pytest.mark.skipif(not _has_d4rl, reason="D4RL not found") class TestD4RL: diff --git a/torchrl/envs/libs/vmas.py b/torchrl/envs/libs/vmas.py index 117475d2f45..e70d5d29bf5 100644 --- a/torchrl/envs/libs/vmas.py +++ b/torchrl/envs/libs/vmas.py @@ -7,6 +7,7 @@ CompositeSpec, DEVICE_TYPING, DiscreteTensorSpec, + LazyStackedCompositeSpec, UnboundedContinuousTensorSpec, ) from torchrl.envs.common import _EnvWrapper, EnvBase @@ -160,26 +161,38 @@ def _make_specs( info_specs = [] for agent_index, agent in enumerate(self.agents): action_specs.append( - _gym_to_torchrl_spec_transform( - self.action_space[agent_index], - categorical_action_encoding=True, - device=self.device, - remap_state_to_observation=False, + CompositeSpec( + { + "action": _gym_to_torchrl_spec_transform( + self.action_space[agent_index], + categorical_action_encoding=True, + device=self.device, + remap_state_to_observation=False, + ) # shape = (n_actions_per_agent,) + }, ) - ) # shape = (n_actions_per_agent,) + ) observation_specs.append( - _gym_to_torchrl_spec_transform( - self.observation_space[agent_index], - device=self.device, - remap_state_to_observation=False, + CompositeSpec( + { + "observation": _gym_to_torchrl_spec_transform( + self.observation_space[agent_index], + device=self.device, + remap_state_to_observation=False, + ) # shape = (n_obs_per_agent,) + }, ) - ) # shape = (n_obs_per_agent,) + ) reward_specs.append( - UnboundedContinuousTensorSpec( - shape=torch.Size((1,)), - device=self.device, + CompositeSpec( + { + "reward": UnboundedContinuousTensorSpec( + shape=torch.Size((1,)), + device=self.device, + ) # shape = (1,) + } ) - ) # shape = (1,) + ) agent_info = self.scenario.info(agent) if len(agent_info): info_specs.append( @@ -200,13 +213,17 @@ def _make_specs( # Create multi-agent specs multi_agent_action_spec = torch.stack( action_specs, dim=0 - ) # UnboundedContinuousTensorSpec with shape = (n_agents, n_actions_per_agent) + ) # shape = (n_agents, n_actions_per_agent) multi_agent_observation_spec = torch.stack( observation_specs, dim=0 - ) # UnboundedContinuousTensorSpec with shape = (n_agents, n_obs_per_agent) + ) # shape = (n_agents, n_obs_per_agent) multi_agent_reward_spec = torch.stack( reward_specs, dim=0 - ) # UnboundedContinuousTensorSpec with shape = (n_agents, 1) + ) # shape = (n_agents, 1) + + self.het_specs = isinstance( + multi_agent_observation_spec, LazyStackedCompositeSpec + ) or isinstance(multi_agent_action_spec, LazyStackedCompositeSpec) done_spec = DiscreteTensorSpec( n=2, @@ -215,32 +232,15 @@ def _make_specs( device=self.device, ) # shape = (1,) - self.unbatched_action_spec = CompositeSpec( - { - "agents": CompositeSpec( - {"action": multi_agent_action_spec}, shape=(self.n_agents,) - ) - } - ) + self.unbatched_action_spec = CompositeSpec({"agents": multi_agent_action_spec}) self.unbatched_observation_spec = CompositeSpec( - { - "agents": CompositeSpec( - {"observation": multi_agent_observation_spec}, - shape=(self.n_agents,), - ) - } + {"agents": multi_agent_observation_spec} ) if len(info_specs): multi_agent_info_spec = torch.stack(info_specs, dim=0) self.unbatched_observation_spec[("agents", "info")] = multi_agent_info_spec - self.unbatched_reward_spec = CompositeSpec( - { - "agents": CompositeSpec( - {"reward": multi_agent_reward_spec}, shape=(self.n_agents,) - ) - } - ) + self.unbatched_reward_spec = CompositeSpec({"agents": multi_agent_reward_spec}) self.unbatched_done_spec = done_spec self.action_spec = self.unbatched_action_spec.expand( @@ -301,20 +301,24 @@ def _reset( agent_td = TensorDict( source={ - "agents": { - "observation": agent_obs, - }, + "observation": agent_obs, }, batch_size=self.batch_size, device=self.device, ) if agent_info is not None: - agent_td.set(("agents", "info"), agent_info) + agent_td.set("info", agent_info) agent_tds.append(agent_td) - tensordict_out = torch.stack(agent_tds, dim=1).to_tensordict() - tensordict_out.batch_size = self.batch_size - tensordict_out.set("done", dones) + agent_tds = torch.stack(agent_tds, dim=1) + if not self.het_specs: + agent_tds = agent_tds.to_tensordict() + tensordict_out = TensorDict( + source={"agents": agent_tds, "done": dones}, + batch_size=self.batch_size, + device=self.device, + ) + return tensordict_out def _step( @@ -336,23 +340,26 @@ def _step( agent_td = TensorDict( source={ - "agents": { - "observation": agent_obs, - "reward": agent_rew, - }, + "observation": agent_obs, + "reward": agent_rew, }, batch_size=self.batch_size, device=self.device, ) if agent_info is not None: - agent_td.set(("agents", "info"), agent_info) + agent_td.set("info", agent_info) agent_tds.append(agent_td) - tensordict_out = torch.stack(agent_tds, dim=1).to_tensordict() - tensordict_out.batch_size = self.batch_size - tensordict_out.set("done", dones) + agent_tds = torch.stack(agent_tds, dim=1) + if not self.het_specs: + agent_tds = agent_tds.to_tensordict() + tensordict_out = TensorDict( + source={"next": {"agents": agent_tds, "done": dones}}, + batch_size=self.batch_size, + device=self.device, + ) - return tensordict_out.select().set("next", tensordict_out) + return tensordict_out def read_obs( self, observations: Union[Dict, torch.Tensor] From 4217ef697a59aa480e69cb5223f06a948785fef9 Mon Sep 17 00:00:00 2001 From: Omkar Salpekar Date: Tue, 8 Aug 2023 01:06:15 -0400 Subject: [PATCH 032/148] Fix MacOS Mujoco Failure (#1450) --- .github/workflows/test-macos-cpu.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/test-macos-cpu.yml b/.github/workflows/test-macos-cpu.yml index 85e67d1e117..c802ca86f19 100644 --- a/.github/workflows/test-macos-cpu.yml +++ b/.github/workflows/test-macos-cpu.yml @@ -32,6 +32,7 @@ jobs: # Set env vars from matrix export PYTHON_VERSION=${{ matrix.python_version }} export CU_VERSION="cpu" + export SYSTEM_VERSION_COMPAT=0 echo "PYTHON_VERSION: $PYTHON_VERSION" echo "CU_VERSION: $CU_VERSION" From e89f21f71455de7f8a8aeb2b8caa90726bc3344b Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Tue, 8 Aug 2023 14:46:07 +0200 Subject: [PATCH 033/148] [BugFix] Fix Cython for D4RL (#1429) --- .../unittest/linux_libs/scripts_d4rl/run_test.sh | 2 +- .../unittest/linux_libs/scripts_d4rl/setup_env.sh | 12 +++++++++++- .../linux_libs/scripts_habitat/setup_env.sh | 5 +++++ test/test_postprocs.py | 13 ------------- 4 files changed, 17 insertions(+), 15 deletions(-) diff --git a/.circleci/unittest/linux_libs/scripts_d4rl/run_test.sh b/.circleci/unittest/linux_libs/scripts_d4rl/run_test.sh index f453290b7fd..6a8d7011866 100755 --- a/.circleci/unittest/linux_libs/scripts_d4rl/run_test.sh +++ b/.circleci/unittest/linux_libs/scripts_d4rl/run_test.sh @@ -11,7 +11,7 @@ ln -s /usr/bin/swig3.0 /usr/bin/swig # we install d4rl here bc env variables have been updated git clone https://github.com/Farama-Foundation/d4rl.git cd d4rl -pip3 install -U 'mujoco-py<2.1,>=2.0' +#pip3 install -U 'mujoco-py<2.1,>=2.0' pip3 install -U "gym[classic_control,atari,accept-rom-license]"==0.23 pip3 install -U six pip install -e . diff --git a/.circleci/unittest/linux_libs/scripts_d4rl/setup_env.sh b/.circleci/unittest/linux_libs/scripts_d4rl/setup_env.sh index c28f1a4b350..97294a6a025 100755 --- a/.circleci/unittest/linux_libs/scripts_d4rl/setup_env.sh +++ b/.circleci/unittest/linux_libs/scripts_d4rl/setup_env.sh @@ -6,6 +6,7 @@ # Do not install PyTorch and torchvision here, otherwise they also get cached. set -e +set -v this_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" # Avoid error: "fatal: unsafe repository" @@ -39,6 +40,12 @@ if [ ! -d "${env_dir}" ]; then fi conda activate "${env_dir}" +#pip3 uninstall cython -y +#pip uninstall cython -y +#conda uninstall cython -y +pip3 install "cython<3" +conda install -c anaconda cython="<3.0.0" -y + # 3. Install mujoco printf "* Installing mujoco and related\n" @@ -53,6 +60,9 @@ wget https://www.roboti.us/file/mjkey.txt cp mjkey.txt ./mujoco200_linux/bin/ # install mujoco-py locally git clone https://github.com/vmoens/mujoco-py.git +cd mujoco-py +git checkout v2.0.2.1 +pip install -e . cd $this_dir # 4. Install Conda dependencies @@ -60,7 +70,7 @@ printf "* Installing dependencies (except PyTorch)\n" echo " - python=${PYTHON_VERSION}" >> "${this_dir}/environment.yml" cat "${this_dir}/environment.yml" -pip install pip --upgrade +pip3 install pip --upgrade # 5. env variables if [[ $OSTYPE == 'darwin'* ]]; then diff --git a/.circleci/unittest/linux_libs/scripts_habitat/setup_env.sh b/.circleci/unittest/linux_libs/scripts_habitat/setup_env.sh index 9fc68255fcd..0a907d3fe91 100755 --- a/.circleci/unittest/linux_libs/scripts_habitat/setup_env.sh +++ b/.circleci/unittest/linux_libs/scripts_habitat/setup_env.sh @@ -39,6 +39,11 @@ if [ ! -d "${env_dir}" ]; then conda create --prefix "${env_dir}" -y python="$PYTHON_VERSION" fi conda activate "${env_dir}" +#pip3 uninstall cython -y +#pip uninstall cython -y +#conda uninstall cython -y +pip3 install "cython<3" +conda install -c anaconda cython="<3.0.0" -y # 3. Install Conda dependencies diff --git a/test/test_postprocs.py b/test/test_postprocs.py index c7faa8df1a8..e28ee2eb592 100644 --- a/test/test_postprocs.py +++ b/test/test_postprocs.py @@ -320,19 +320,6 @@ def test_splits(self, num_workers, traj_len): == split_trajs.get(("collector", "traj_ids")).max() + 1 ) - @pytest.mark.parametrize("num_workers", range(3, 34, 3)) - @pytest.mark.parametrize("traj_len", [10, 17, 50, 97]) - def test_splits_notraj(self, num_workers, traj_len): - - trajs = TestSplits.create_fake_trajs(num_workers, traj_len) - trajs_pop = trajs.clone() - del trajs_pop[("collector", "traj_ids")] - split_trajs = split_trajectories(trajs, prefix="collector") - split_trajs_pop = split_trajectories(trajs_pop, prefix="collector") - del split_trajs[("collector", "traj_ids")] - del split_trajs_pop[("collector", "traj_ids")] - assert (split_trajs == split_trajs_pop).all() - if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() From 710fd2b04f3a6d4d41af566f33ebc9cf8ef77c10 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 9 Aug 2023 17:55:27 +0200 Subject: [PATCH 034/148] [Feature] IsaacGymEnvs integration (#1443) --- test/test_libs.py | 81 ++++++++++++++++ torchrl/envs/gym_like.py | 1 - torchrl/envs/libs/gym.py | 18 +++- torchrl/envs/libs/isaacgym.py | 170 ++++++++++++++++++++++++++++++++++ 4 files changed, 264 insertions(+), 6 deletions(-) create mode 100644 torchrl/envs/libs/isaacgym.py diff --git a/test/test_libs.py b/test/test_libs.py index 29149c03c6f..dc03c092c68 100644 --- a/test/test_libs.py +++ b/test/test_libs.py @@ -2,6 +2,16 @@ # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. +import importlib + +_has_isaac = importlib.util.find_spec("isaacgym") is not None + +if _has_isaac: + # isaac gym asks to be imported before torch... + import isaacgym # noqa + import isaacgymenvs # noqa + from torchrl.envs.libs.isaacgym import IsaacGymEnv + import argparse import importlib @@ -18,6 +28,7 @@ _make_multithreaded_env, CARTPOLE_VERSIONED, get_available_devices, + get_default_devices, HALFCHEETAH_VERSIONED, PENDULUM_VERSIONED, PONG_VERSIONED, @@ -1534,6 +1545,76 @@ def test_data(self, dataset): assert len(data) // 2048 in (i, i - 1) +@pytest.mark.skipif(not _has_isaac, reason="IsaacGym not found") +@pytest.mark.parametrize( + "task", + [ + "AllegroHand", + # "AllegroKuka", + # "AllegroKukaTwoArms", + # "AllegroHandManualDR", + # "AllegroHandADR", + "Ant", + # "Anymal", + # "AnymalTerrain", + # "BallBalance", + # "Cartpole", + # "FactoryTaskGears", + # "FactoryTaskInsertion", + # "FactoryTaskNutBoltPick", + # "FactoryTaskNutBoltPlace", + # "FactoryTaskNutBoltScrew", + # "FrankaCabinet", + # "FrankaCubeStack", + "Humanoid", + # "HumanoidAMP", + # "Ingenuity", + # "Quadcopter", + # "ShadowHand", + "Trifinger", + ], +) +@pytest.mark.parametrize("num_envs", [10, 20]) +@pytest.mark.parametrize("device", get_default_devices()) +class TestIsaacGym: + @classmethod + def _run_on_proc(cls, q, task, num_envs, device): + try: + env = IsaacGymEnv(task=task, num_envs=num_envs, device=device) + check_env_specs(env) + q.put(("succeeded!", None)) + except Exception as err: + q.put(("failed!", err)) + raise err + + def test_env(self, task, num_envs, device): + from torch import multiprocessing as mp + + q = mp.Queue(1) + proc = mp.Process(target=self._run_on_proc, args=(q, task, num_envs, device)) + try: + proc.start() + msg, error = q.get() + if msg != "succeeded!": + raise error + finally: + q.close() + proc.join() + + # + # def test_collector(self, task, num_envs, device): + # env = IsaacGymEnv(task=task, num_envs=num_envs, device=device) + # collector = SyncDataCollector( + # env, + # policy=SafeModule(nn.LazyLinear(out_features=env.observation_spec['obs'].shape[-1]), in_keys=["obs"], out_keys=["action"]), + # frames_per_batch=20, + # total_frames=-1 + # ) + # for c in collector: + # assert c.shape == torch.Size([num_envs, 20]) + # break + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/torchrl/envs/gym_like.py b/torchrl/envs/gym_like.py index fa724c0ca10..7f641989b7a 100644 --- a/torchrl/envs/gym_like.py +++ b/torchrl/envs/gym_like.py @@ -166,7 +166,6 @@ def read_obs( """ if isinstance(observations, dict): - observations = {key: value for key, value in observations.items()} if "state" in observations and "observation" not in observations: # we rename "state" in "observation" as "observation" is the conventional name # for single observation in torchrl. diff --git a/torchrl/envs/libs/gym.py b/torchrl/envs/libs/gym.py index d179bffa805..2a71cd8f7a1 100644 --- a/torchrl/envs/libs/gym.py +++ b/torchrl/envs/libs/gym.py @@ -528,8 +528,8 @@ def _set_seed_initial(self, seed: int) -> None: # noqa: F811 self._seed_calls_reset = False self._env.seed(seed=seed) - def _make_specs(self, env: "gym.Env") -> None: # noqa: F821 - self.action_spec = _gym_to_torchrl_spec_transform( + def _make_specs(self, env: "gym.Env", batch_size=None) -> None: # noqa: F821 + action_spec = _gym_to_torchrl_spec_transform( env.action_space, device=self.device, categorical_action_encoding=self._categorical_action_encoding, @@ -544,18 +544,26 @@ def _make_specs(self, env: "gym.Env") -> None: # noqa: F821 observation_spec = CompositeSpec(pixels=observation_spec) else: observation_spec = CompositeSpec(observation=observation_spec) - self.observation_spec = observation_spec if hasattr(env, "reward_space") and env.reward_space is not None: - self.reward_spec = _gym_to_torchrl_spec_transform( + reward_spec = _gym_to_torchrl_spec_transform( env.reward_space, device=self.device, categorical_action_encoding=self._categorical_action_encoding, ) else: - self.reward_spec = UnboundedContinuousTensorSpec( + reward_spec = UnboundedContinuousTensorSpec( shape=[1], device=self.device, ) + if batch_size is not None: + action_spec = action_spec.expand(*batch_size, *action_spec.shape) + reward_spec = reward_spec.expand(*batch_size, *reward_spec.shape) + observation_spec = observation_spec.expand( + *batch_size, *observation_spec.shape + ) + self.action_spec = action_spec + self.reward_spec = reward_spec + self.observation_spec = observation_spec def _init_env(self): self.reset() diff --git a/torchrl/envs/libs/isaacgym.py b/torchrl/envs/libs/isaacgym.py new file mode 100644 index 00000000000..3d181982d6c --- /dev/null +++ b/torchrl/envs/libs/isaacgym.py @@ -0,0 +1,170 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. +import importlib.util + +import itertools +import warnings +from typing import Any, Dict, List, Union + +import numpy as np +import torch + +from tensordict import TensorDictBase +from torchrl.envs import make_composite_from_td +from torchrl.envs.libs.gym import GymWrapper + +_has_isaac = importlib.util.find_spec("isaacgym") is not None + + +class IsaacGymWrapper(GymWrapper): + """Wrapper for IsaacGymEnvs environments. + + The original library can be found `here `_ + and is based on IsaacGym which can be downloaded `through NVIDIA's webpage _`. + + .. note:: IsaacGym environments cannot be executed consecutively, ie. instantiating one + environment after another (even if it has been cleared) will cause + CUDA memory issues. We recommend creating one environment per process only. + If you need more than one environment, the best way to achieve that is + to spawn them across processes. + + .. note:: IsaacGym works on CUDA devices by essence. Make sure your machine + has GPUs available and the required setup for IsaacGym (eg, Ubuntu 20.04). + + """ + + def __init__( + self, env: "isaacgymenvs.tasks.base.vec_task.Env", **kwargs + ): # noqa: F821 + warnings.warn( + "IsaacGym environment support is an experimental feature that may change in the future." + ) + num_envs = env.num_envs + super().__init__( + env, torch.device(env.device), batch_size=torch.Size([num_envs]), **kwargs + ) + if not hasattr(self, "task"): + # by convention in IsaacGymEnvs + self.task = env.__name__ + + def _make_specs(self, env: "gym.Env") -> None: # noqa: F821 + super()._make_specs(env, batch_size=self.batch_size) + self.done_spec = self.done_spec.squeeze(-1) + self.observation_spec["obs"] = self.observation_spec["observation"] + del self.observation_spec["observation"] + + data = self.rollout(3).get("next")[..., 0] + del data[self.reward_key] + del data[self.done_key] + specs = make_composite_from_td(data) + + obs_spec = self.observation_spec + obs_spec.unlock_() + obs_spec.update(specs) + obs_spec.lock_() + self.__dict__["_observation_spec"] = obs_spec + + @classmethod + def _make_envs(cls, *, task, num_envs, device, seed=None, headless=True, **kwargs): + import isaacgym # noqa + import isaacgymenvs # noqa + + envs = isaacgymenvs.make( + seed=seed, + task=task, + num_envs=num_envs, + sim_device=str(device), + rl_device=str(device), + headless=headless, + **kwargs, + ) + return envs + + def _set_seed(self, seed: int) -> int: + # as of #665c32170d84b4be66722eea405a1e08b6e7f761 the seed points nowhere in gym.make for IsaacGymEnvs + return seed + + def read_action(self, action): + """Reads the action obtained from the input TensorDict and transforms it in the format expected by the contained environment. + + Args: + action (Tensor or TensorDict): an action to be taken in the environment + + Returns: an action in a format compatible with the contained environment. + + """ + return action + + def read_done(self, done): + """Done state reader. + + Reads a done state and returns a tuple containing: + - a done state to be set in the environment + - a boolean value indicating whether the frame_skip loop should be broken + + Args: + done (np.ndarray, boolean or other format): done state obtained from the environment + + """ + return done.bool(), done.any() + + def read_reward(self, total_reward, step_reward): + """Reads a reward and the total reward so far (in the frame skip loop) and returns a sum of the two. + + Args: + total_reward (torch.Tensor or TensorDict): total reward so far in the step + step_reward (reward in the format provided by the inner env): reward of this particular step + + """ + return total_reward + step_reward + + def read_obs( + self, observations: Union[Dict[str, Any], torch.Tensor, np.ndarray] + ) -> Dict[str, Any]: + """Reads an observation from the environment and returns an observation compatible with the output TensorDict. + + Args: + observations (observation under a format dictated by the inner env): observation to be read. + + """ + if isinstance(observations, dict): + if "state" in observations and "observation" not in observations: + # we rename "state" in "observation" as "observation" is the conventional name + # for single observation in torchrl. + # naming it 'state' will result in envs that have a different name for the state vector + # when queried with and without pixels + observations["observation"] = observations.pop("state") + if not isinstance(observations, (TensorDictBase, dict)): + (key,) = itertools.islice(self.observation_spec.keys(True, True), 1) + observations = {key: observations} + return observations + + +class IsaacGymEnv(IsaacGymWrapper): + """A TorchRL Env interface for IsaacGym environments. + + See :class:`~.IsaacGymWrapper` for more information. + + Examples: + >>> env = IsaacGymEnv(task="Ant", num_envs=2000, device="cuda:0") + >>> rollout = env.rollout(3) + >>> assert env.batch_size == (2000,) + + """ + + @property + def available_envs(cls) -> List[str]: + import isaacgymenvs # noqa + + return list(isaacgymenvs.tasks.isaacgym_task_map.keys()) + + def __init__(self, task=None, *, env=None, num_envs, device, **kwargs): + if env is not None and task is not None: + raise RuntimeError("Cannot provide both `task` and `env` arguments.") + elif env is not None: + task = env + envs = self._make_envs(task=task, num_envs=num_envs, device=device, **kwargs) + self.task = task + super().__init__(envs, **kwargs) From 648c3bcd0ea5a36e9704601ed921e3123eceb203 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Wed, 9 Aug 2023 16:56:24 +0100 Subject: [PATCH 035/148] [Benchmark] Benchmark number GPU vectorised environments in VMAS (TorchRL vs RLlib) (#1446) Signed-off-by: Matteo Bettini Co-authored-by: vmoens --- ...s_rllib_vs_torchrl_sampling_performance.py | 231 ++++++++++++++++++ 1 file changed, 231 insertions(+) create mode 100644 benchmarks/ecosystem/vmas_rllib_vs_torchrl_sampling_performance.py diff --git a/benchmarks/ecosystem/vmas_rllib_vs_torchrl_sampling_performance.py b/benchmarks/ecosystem/vmas_rllib_vs_torchrl_sampling_performance.py new file mode 100644 index 00000000000..daaf800353f --- /dev/null +++ b/benchmarks/ecosystem/vmas_rllib_vs_torchrl_sampling_performance.py @@ -0,0 +1,231 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + + +import os +import pickle + +import time +from pathlib import Path +from typing import Dict + +import numpy as np + +import ray + +import vmas +from matplotlib import pyplot as plt +from ray import tune + +from ray.rllib.agents.ppo import PPOTrainer +from ray.rllib.algorithms.callbacks import DefaultCallbacks +from ray.tune import register_env +from torchrl.collectors import SyncDataCollector +from torchrl.envs.libs.vmas import VmasEnv +from vmas import Wrapper + + +def store_pickled_evaluation(name: str, evaluation: dict): + save_folder = f"{os.path.dirname(os.path.realpath(__file__))}" + file = f"{save_folder}/{name}.pkl" + + pickle.dump(evaluation, open(file, "wb")) + + +def load_pickled_evaluation( + name: str, +): + save_folder = f"{os.path.dirname(os.path.realpath(__file__))}" + file = Path(f"{save_folder}/{name}.pkl") + + if file.is_file(): + return pickle.load(open(file, "rb")) + return None + + +def run_vmas_torchrl( + scenario_name: str, n_envs: int, n_steps: int, device: str, seed: int = 0 +): + env = VmasEnv( + scenario_name, + device=device, + num_envs=n_envs, + continuous_actions=False, + seed=seed, + ) + + collector = SyncDataCollector( + env, + policy=None, + device=device, + frames_per_batch=n_envs * n_steps, + total_frames=n_envs * n_steps, + ) + + init_time = time.time() + + for _data in collector: + pass + + total_time = time.time() - init_time + collector.shutdown() + return total_time + + +def run_vmas_rllib( + scenario_name: str, n_envs: int, n_steps: int, device: str, seed: int = 0 +): + class TimerCallback(DefaultCallbacks): + result_time = None + + def on_train_result( + self, + *, + algorithm, + result: dict, + **kwargs, + ) -> None: + TimerCallback.result_time = ( + result["timers"]["training_iteration_time_ms"] + - result["timers"]["learn_time_ms"] + ) + + def env_creator(config: Dict): + env = vmas.make_env( + scenario=config["scenario_name"], + num_envs=config["num_envs"], + device=config["device"], + continuous_actions=False, + wrapper=Wrapper.RLLIB, + ) + return env + + if not ray.is_initialized(): + ray.init() + register_env(scenario_name, lambda config: env_creator(config)) + + num_gpus = 0.5 if device == "cuda" else 0 + num_gpus_per_worker = 0.5 if device == "cuda" else 0 + tune.run( + PPOTrainer, + stop={"training_iteration": 1}, + config={ + "seed": seed, + "framework": "torch", + "env": scenario_name, + "train_batch_size": n_envs * n_steps, + "rollout_fragment_length": n_steps, + "sgd_minibatch_size": n_envs * n_steps, + "num_gpus": num_gpus, + "num_workers": 0, + "num_gpus_per_worker": num_gpus_per_worker, + "num_envs_per_worker": n_envs, + "batch_mode": "truncate_episodes", + "env_config": { + "device": device, + "num_envs": n_envs, + "scenario_name": scenario_name, + "max_steps": n_steps, + }, + "callbacks": TimerCallback, + }, + ) + assert TimerCallback.result_time is not None + TimerCallback.result_time /= 1_000 # convert to seconds + return TimerCallback.result_time + + +def run_comparison_torchrl_rllib( + scenario_name: str, + device: str, + n_steps: int = 100, + max_n_envs: int = 3000, + step_n_envs: int = 3, +): + """ + + Args: + scenario_name (str): name of scenario to benchmark + device (str): device to ron comparison on ("cpu" or "cuda") + n_steps (int): number of environment steps + max_n_envs (int): the maximum number of parallel environments to test + step_n_envs (int): the step size in number of environments from 1 to max_n_envs + + """ + list_n_envs = np.linspace(1, max_n_envs, step_n_envs) + + figure_name = f"VMAS_{scenario_name}_{n_steps}_{device}_steps_rllib_vs_torchrl" + figure_name_pkl = figure_name + f"_range_{1}_{max_n_envs}_num_{step_n_envs}" + + evaluation = load_pickled_evaluation(figure_name_pkl) + if not evaluation: + evaluation = {} + for framework in ["TorchRL", "RLlib"]: + if framework not in evaluation.keys(): + print(f"\nFramework {framework}") + vmas_times = [] + for n_envs in list_n_envs: + n_envs = int(n_envs) + print(f"Running {n_envs} environments") + if framework == "TorchRL": + vmas_times.append( + (n_envs * n_steps) + / run_vmas_torchrl( + scenario_name=scenario_name, + n_envs=n_envs, + n_steps=n_steps, + device=device, + ) + ) + else: + vmas_times.append( + (n_envs * n_steps) + / run_vmas_rllib( + scenario_name=scenario_name, + n_envs=n_envs, + n_steps=n_steps, + device=device, + ) + ) + print(f"fps {vmas_times[-1]}s") + evaluation[framework] = vmas_times + + store_pickled_evaluation(name=figure_name_pkl, evaluation=evaluation) + + fig, ax = plt.subplots() + for key, item in evaluation.items(): + ax.plot( + list_n_envs, + item, + label=key, + ) + + plt.xlabel("Number of batched environments", fontsize=14) + plt.ylabel("Frames per second", fontsize=14) + ax.legend(loc="upper left") + + ax.set_title( + f"Execution time of '{scenario_name}' for {n_steps} steps on {device}.", + fontsize=8, + ) + + save_folder = os.path.dirname(os.path.realpath(__file__)) + plt.savefig(f"{save_folder}/{figure_name}.pdf") + + +if __name__ == "__main__": + # pip install matplotlib + # pip install "ray[rllib]"==2.1.0 + # pip install torchrl + # pip install vmas + # pip install numpy==1.23.5 + + run_comparison_torchrl_rllib( + scenario_name="simple_spread", + device="cuda", + n_steps=100, + max_n_envs=30000, + step_n_envs=10, + ) From a0a0d20e226b3831ead1c56e408e6af4b96e690a Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 11 Aug 2023 13:42:48 +0200 Subject: [PATCH 036/148] [Feature] Auto-DoubleToFloat (#1442) --- docs/source/reference/envs.rst | 1 + examples/a2c/utils.py | 33 +- examples/cql/utils.py | 9 +- examples/ddpg/utils.py | 2 +- .../collectors/multi_nodes/ray_train.py | 4 +- examples/dreamer/dreamer_utils.py | 4 +- examples/ppo/utils.py | 34 +- examples/sac/utils.py | 2 +- examples/td3/utils.py | 2 +- test/test_transforms.py | 61 ++++ torchrl/envs/__init__.py | 1 + torchrl/envs/libs/isaacgym.py | 4 +- torchrl/envs/transforms/__init__.py | 1 + torchrl/envs/transforms/transforms.py | 334 ++++++++++++++++-- 14 files changed, 377 insertions(+), 115 deletions(-) diff --git a/docs/source/reference/envs.rst b/docs/source/reference/envs.rst index 50519dc85fa..1150eea3e99 100644 --- a/docs/source/reference/envs.rst +++ b/docs/source/reference/envs.rst @@ -452,6 +452,7 @@ to be able to create this other composition: Compose DiscreteActionProjection DoubleToFloat + DTypeCastTransform ExcludeTransform FiniteTensorDictCheck FlattenObservation diff --git a/examples/a2c/utils.py b/examples/a2c/utils.py index 23e23e07e45..e49df2b4771 100644 --- a/examples/a2c/utils.py +++ b/examples/a2c/utils.py @@ -86,15 +86,11 @@ def make_transformed_env_pixels(base_env, env_cfg): if not isinstance(env_cfg.reward_scaling, float): env_cfg.reward_scaling = DEFAULT_REWARD_SCALING.get(env_cfg.env_name, 5.0) - env_library = LIBS[env_cfg.env_library] env = TransformedEnv(base_env) reward_scaling = env_cfg.reward_scaling env.append_transform(RewardScaling(0.0, reward_scaling)) - double_to_float_list = [] - double_to_float_inv_list = [] - env.append_transform(ToTensorImage()) env.append_transform(GrayScale()) env.append_transform(Resize(84, 84)) @@ -102,16 +98,7 @@ def make_transformed_env_pixels(base_env, env_cfg): env.append_transform(RewardSum()) env.append_transform(StepCounter()) - if env_library is DMControlEnv: - double_to_float_list += [ - "reward", - ] - double_to_float_inv_list += ["action"] # DMControl requires double-precision - env.append_transform( - DoubleToFloat( - in_keys=double_to_float_list, in_keys_inv=double_to_float_inv_list - ) - ) + env.append_transform(DoubleToFloat()) return env @@ -119,16 +106,12 @@ def make_transformed_env_states(base_env, env_cfg): if not isinstance(env_cfg.reward_scaling, float): env_cfg.reward_scaling = DEFAULT_REWARD_SCALING.get(env_cfg.env_name, 5.0) - env_library = LIBS[env_cfg.env_library] env = TransformedEnv(base_env) reward_scaling = env_cfg.reward_scaling env.append_transform(RewardScaling(0.0, reward_scaling)) - double_to_float_list = [] - double_to_float_inv_list = [] - # we concatenate all the state vectors # even if there is a single tensor, it'll be renamed in "observation_vector" selected_keys = [ @@ -141,19 +124,7 @@ def make_transformed_env_states(base_env, env_cfg): # obs_norm = ObservationNorm(in_keys=[out_key]) # env.append_transform(obs_norm) - if env_library is DMControlEnv: - double_to_float_list += [ - "reward", - ] - double_to_float_inv_list += ["action"] # DMControl requires double-precision - double_to_float_list += ["observation_vector"] - else: - double_to_float_list += ["observation_vector"] - env.append_transform( - DoubleToFloat( - in_keys=double_to_float_list, in_keys_inv=double_to_float_inv_list - ) - ) + env.append_transform(DoubleToFloat()) return env diff --git a/examples/cql/utils.py b/examples/cql/utils.py index e458633892c..c6f56217ff9 100644 --- a/examples/cql/utils.py +++ b/examples/cql/utils.py @@ -41,7 +41,7 @@ def apply_env_transforms(env, reward_scaling=1.0): env, Compose( RewardScaling(loc=0.0, scale=reward_scaling), - DoubleToFloat(in_keys=["observation"], in_keys_inv=[]), + DoubleToFloat(), ), ) return transformed_env @@ -129,12 +129,7 @@ def make_offline_replay_buffer(rb_cfg): sampler=SamplerWithoutReplacement(drop_last=False), ) - data.append_transform( - DoubleToFloat( - in_keys=["observation", ("next", "observation")], - in_keys_inv=[], - ) - ) + data.append_transform(DoubleToFloat()) return data diff --git a/examples/ddpg/utils.py b/examples/ddpg/utils.py index 65c51a0a9c1..ab4083fff28 100644 --- a/examples/ddpg/utils.py +++ b/examples/ddpg/utils.py @@ -43,7 +43,7 @@ def apply_env_transforms(env, reward_scaling=1.0): Compose( InitTracker(), RewardScaling(loc=0.0, scale=reward_scaling), - DoubleToFloat(in_keys=["observation"], in_keys_inv=[]), + DoubleToFloat(), ), ) return transformed_env diff --git a/examples/distributed/collectors/multi_nodes/ray_train.py b/examples/distributed/collectors/multi_nodes/ray_train.py index 4d8b2f37fc4..a5265f442b7 100644 --- a/examples/distributed/collectors/multi_nodes/ray_train.py +++ b/examples/distributed/collectors/multi_nodes/ray_train.py @@ -58,9 +58,7 @@ Compose( # normalize observations ObservationNorm(in_keys=["observation"]), - DoubleToFloat( - in_keys=["observation"], - ), + DoubleToFloat(), StepCounter(), ), ) diff --git a/examples/dreamer/dreamer_utils.py b/examples/dreamer/dreamer_utils.py index ae846a0fef6..c16337aa087 100644 --- a/examples/dreamer/dreamer_utils.py +++ b/examples/dreamer/dreamer_utils.py @@ -121,9 +121,7 @@ def make_env_transforms( "reward", ] float_to_double_list += ["action"] # DMControl requires double-precision - env.append_transform( - DoubleToFloat(in_keys=double_to_float_list, in_keys_inv=float_to_double_list) - ) + env.append_transform(DoubleToFloat()) default_dict = { "state": UnboundedContinuousTensorSpec(shape=(*env.batch_size, cfg.state_dim)), diff --git a/examples/ppo/utils.py b/examples/ppo/utils.py index 8c75582b043..842e443d3b6 100644 --- a/examples/ppo/utils.py +++ b/examples/ppo/utils.py @@ -93,15 +93,11 @@ def make_transformed_env_pixels(base_env, env_cfg): if not isinstance(env_cfg.reward_scaling, float): env_cfg.reward_scaling = DEFAULT_REWARD_SCALING.get(env_cfg.env_name, 5.0) - env_library = LIBS[env_cfg.env_library] env = TransformedEnv(base_env) reward_scaling = env_cfg.reward_scaling env.append_transform(RewardScaling(0.0, reward_scaling)) - double_to_float_list = [] - double_to_float_inv_list = [] - env.append_transform(ToTensorImage()) env.append_transform(GrayScale()) env.append_transform(Resize(84, 84)) @@ -112,17 +108,7 @@ def make_transformed_env_pixels(base_env, env_cfg): obs_norm = ObservationNorm(in_keys=["pixels"], standard_normal=True) env.append_transform(obs_norm) - if env_library is DMControlEnv: - double_to_float_list += [ - "reward", - ] - double_to_float_inv_list += ["action"] # DMControl requires double-precision - - env.append_transform( - DoubleToFloat( - in_keys=double_to_float_list, in_keys_inv=double_to_float_inv_list - ) - ) + env.append_transform(DoubleToFloat()) return env @@ -130,16 +116,12 @@ def make_transformed_env_states(base_env, env_cfg): if not isinstance(env_cfg.reward_scaling, float): env_cfg.reward_scaling = DEFAULT_REWARD_SCALING.get(env_cfg.env_name, 5.0) - env_library = LIBS[env_cfg.env_library] env = TransformedEnv(base_env) reward_scaling = env_cfg.reward_scaling env.append_transform(RewardScaling(0.0, reward_scaling)) - double_to_float_list = [] - double_to_float_inv_list = [] - # we concatenate all the state vectors # even if there is a single tensor, it'll be renamed in "observation_vector" selected_keys = [ @@ -152,19 +134,7 @@ def make_transformed_env_states(base_env, env_cfg): # obs_norm = ObservationNorm(in_keys=[out_key]) # env.append_transform(obs_norm) - if env_library is DMControlEnv: - double_to_float_list += [ - "reward", - ] - double_to_float_inv_list += ["action"] # DMControl requires double-precision - double_to_float_list += ["observation_vector"] - else: - double_to_float_list += ["observation_vector"] - env.append_transform( - DoubleToFloat( - in_keys=double_to_float_list, in_keys_inv=double_to_float_inv_list - ) - ) + env.append_transform(DoubleToFloat()) return env diff --git a/examples/sac/utils.py b/examples/sac/utils.py index 4e84bde12c9..023a938df10 100644 --- a/examples/sac/utils.py +++ b/examples/sac/utils.py @@ -29,7 +29,7 @@ def apply_env_transforms(env, reward_scaling=1.0): env, Compose( RewardScaling(loc=0.0, scale=reward_scaling), - DoubleToFloat(in_keys=["observation"], in_keys_inv=[]), + DoubleToFloat(), ), ) return transformed_env diff --git a/examples/td3/utils.py b/examples/td3/utils.py index 529ad43138b..9a8c5809f75 100644 --- a/examples/td3/utils.py +++ b/examples/td3/utils.py @@ -43,7 +43,7 @@ def apply_env_transforms(env, reward_scaling=1.0): Compose( InitTracker(), RewardScaling(loc=0.0, scale=reward_scaling), - DoubleToFloat(in_keys=["observation"], in_keys_inv=[]), + DoubleToFloat(), ), ) return transformed_env diff --git a/test/test_transforms.py b/test/test_transforms.py index 8241fc8d6a2..4aea2bb4775 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -1955,6 +1955,67 @@ def test_double2float(self, keys, keys_inv, device): for key in keys: assert observation_spec[key].dtype == torch.float + @pytest.mark.parametrize("device", get_default_devices()) + @pytest.mark.parametrize( + "keys", + [ + ["observation", ("some_other", "nested_key")], + ["observation_pixels"], + ["action"], + ], + ) + @pytest.mark.parametrize( + "keys_inv", + [ + ["action", ("some_other", "nested_key")], + ["action"], + [], + ], + ) + def test_double2float_auto(self, keys, keys_inv, device): + torch.manual_seed(0) + double2float = DoubleToFloat() + d = { + key: torch.zeros(1, 3, 3, dtype=torch.double, device=device) for key in keys + } + d.update( + { + key: torch.zeros(1, 3, 3, dtype=torch.float32, device=device) + for key in keys_inv + } + ) + td = TensorDict(d, [1], device=device) + # check that the transform does change the dtype in forward + double2float(td) + for key in keys: + assert td.get(key).dtype == torch.float + + # check that inv does not affect the tensordict in-place + td = td.apply(lambda x: x.float()) + td_modif = double2float.inv(td) + for key in keys_inv: + assert td.get(key).dtype != torch.double + assert td_modif.get(key).dtype == torch.double + + def test_single_env_no_inkeys(self): + base_env = ContinuousActionVecMockEnv() + for key, spec in list(base_env.observation_spec.items(True, True)): + base_env.observation_spec[key] = spec.to(torch.float64) + for key, spec in list(base_env.state_spec.items(True, True)): + base_env.state_spec[key] = spec.to(torch.float64) + if base_env.action_spec.dtype == torch.float32: + base_env.action_spec = base_env.action_spec.to(torch.float64) + env = TransformedEnv( + base_env, + DoubleToFloat(), + ) + for spec in env.observation_spec.values(True, True): + assert spec.dtype == torch.float32 + for spec in env.state_spec.values(True, True): + assert spec.dtype == torch.float32 + assert env.action_spec.dtype != torch.float64 + check_env_specs(env) + def test_single_trans_env_check(self, dtype_fixture): # noqa: F811 env = TransformedEnv( ContinuousActionVecMockEnv(), diff --git a/torchrl/envs/__init__.py b/torchrl/envs/__init__.py index 827479bf9c0..9422e60a5d5 100644 --- a/torchrl/envs/__init__.py +++ b/torchrl/envs/__init__.py @@ -15,6 +15,7 @@ Compose, DiscreteActionProjection, DoubleToFloat, + DTypeCastTransform, ExcludeTransform, FiniteTensorDictCheck, FlattenObservation, diff --git a/torchrl/envs/libs/isaacgym.py b/torchrl/envs/libs/isaacgym.py index 3d181982d6c..6e7f47df189 100644 --- a/torchrl/envs/libs/isaacgym.py +++ b/torchrl/envs/libs/isaacgym.py @@ -36,8 +36,8 @@ class IsaacGymWrapper(GymWrapper): """ def __init__( - self, env: "isaacgymenvs.tasks.base.vec_task.Env", **kwargs - ): # noqa: F821 + self, env: "isaacgymenvs.tasks.base.vec_task.Env", **kwargs # noqa: F821 + ): warnings.warn( "IsaacGym environment support is an experimental feature that may change in the future." ) diff --git a/torchrl/envs/transforms/__init__.py b/torchrl/envs/transforms/__init__.py index 5ee87e2c0eb..f14df66f9ed 100644 --- a/torchrl/envs/transforms/__init__.py +++ b/torchrl/envs/transforms/__init__.py @@ -13,6 +13,7 @@ Compose, DiscreteActionProjection, DoubleToFloat, + DTypeCastTransform, ExcludeTransform, FiniteTensorDictCheck, FlattenObservation, diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index 7156c4cf571..268a2e258a7 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -9,6 +9,7 @@ import multiprocessing as mp import warnings from copy import copy, deepcopy +from functools import wraps from textwrap import indent from typing import Any, List, Optional, OrderedDict, Sequence, Tuple, Union @@ -65,6 +66,7 @@ def interpolation_fn(interpolation): # noqa: D103 def _apply_to_composite(function): + @wraps(function) def new_fun(self, observation_spec): if isinstance(observation_spec, CompositeSpec): d = observation_spec._specs @@ -215,12 +217,10 @@ def _call(self, tensordict: TensorDictBase) -> TensorDictBase: def forward(self, tensordict: TensorDictBase) -> TensorDictBase: """Reads the input tensordict, and for the selected keys, applies the transform.""" for in_key, out_key in zip(self.in_keys, self.out_keys): - if in_key in tensordict.keys(include_nested=True): - observation = self._apply_transform(tensordict.get(in_key)) - tensordict.set( - out_key, - observation, - ) + data = tensordict.get(in_key, None) + if data is not None: + data = self._apply_transform(data) + tensordict.set(out_key, data) elif not self.missing_tolerance: raise KeyError(f"'{in_key}' not found in tensordict {tensordict}") return tensordict @@ -254,12 +254,10 @@ def _inv_call(self, tensordict: TensorDictBase) -> TensorDictBase: # # exposed to the user: we'd like that the input keys remain unchanged # # in the originating script if they're being transformed. for in_key, out_key in zip(self.in_keys_inv, self.out_keys_inv): - if in_key in tensordict.keys(include_nested=True): - item = self._inv_apply_transform(tensordict.get(in_key)) - tensordict.set( - out_key, - item, - ) + data = tensordict.get(in_key, None) + if data is not None: + item = self._inv_apply_transform(data) + tensordict.set(out_key, item) elif not self.missing_tolerance: raise KeyError(f"'{in_key}' not found in tensordict {tensordict}") @@ -391,10 +389,7 @@ def parent(self) -> Optional[EnvBase]: compose_parent = TransformedEnv( compose.__dict__["_container"].base_env ) - if compose_parent.transform is not compose: - comp_parent_trans = compose_parent.transform.clone() - else: - comp_parent_trans = None + comp_parent_trans = compose_parent.transform.clone() out = TransformedEnv( compose_parent.base_env, transform=comp_parent_trans, @@ -2347,22 +2342,104 @@ def _call(self, tensordict: TensorDictBase) -> TensorDictBase: forward = _call -class DoubleToFloat(Transform): - """Maps actions float to double before they are called on the environment. +class DTypeCastTransform(Transform): + """Casts one dtype to another for selected keys. + + Depending on whether the ``in_keys`` or ``in_keys_inv`` are provided + during construction, the class behaviour will change: + + * If the keys are provided, those entries and those entries only will be + transformed from ``dtype_in`` to ``dtype_out`` entries; + * If the keys are not provided and the object is within an environment + register of transforms, the input and output specs that have a dtype + set to ``dtype_in`` will be used as in_keys_inv / in_keys respectively. + * If the keys are not provided and the object is used without an + environment, the ``forward`` / ``inverse`` pass will scan through the + input tensordict for all ``dtype_in`` values and map them to a ``dtype_out`` + tensor. For large data structures, this can impact performance as this + scanning doesn't come for free. The keys to be + transformed will not be cached. Args: - in_keys (sequence of NestedKey, optional): list of double keys to be converted to - float before being exposed to external objects and functions. - in_keys_inv (sequence of NestedKey, optional): list of float keys to be converted to - double before being passed to the contained base_env or storage. + dtype_in (torch.dtype): the input dtype (from the env). + dtype_out (torch.dtype): the output dtype (for model training). + in_keys (sequence of NestedKey, optional): list of ``dtype_in`` keys to be converted to + ``dtype_out`` before being exposed to external objects and functions. + in_keys_inv (sequence of NestedKey, optional): list of ``dtype_out`` keys to be converted to + ``dtype_in`` before being passed to the contained base_env or storage. Examples: >>> td = TensorDict( - ... {'obs': torch.ones(1, dtype=torch.double)}, []) - >>> transform = DoubleToFloat(in_keys=["obs"]) + ... {'obs': torch.ones(1, dtype=torch.double), + ... 'not_transformed': torch.ones(1, dtype=torch.double), + ... }, []) + >>> transform = DTypeCastTransform(torch.double, torch.float, in_keys=["obs"]) >>> _ = transform(td) >>> print(td.get("obs").dtype) torch.float32 + >>> print(td.get("not_transformed").dtype) + torch.float64 + + In "automatic" mode, all float64 entries are transformed: + + Examples: + >>> td = TensorDict( + ... {'obs': torch.ones(1, dtype=torch.double), + ... 'not_transformed': torch.ones(1, dtype=torch.double), + ... }, []) + >>> transform = DTypeCastTransform(torch.double, torch.float) + >>> _ = transform(td) + >>> print(td.get("obs").dtype) + torch.float32 + >>> print(td.get("not_transformed").dtype) + torch.float32 + + The same behaviour is the rule when environments are constructedw without + specifying the transform keys: + + Examples: + >>> class MyEnv(EnvBase): + ... def __init__(self): + ... super().__init__() + ... self.observation_spec = CompositeSpec(obs=UnboundedContinuousTensorSpec((), dtype=torch.float64)) + ... self.action_spec = UnboundedContinuousTensorSpec((), dtype=torch.float64) + ... self.reward_spec = UnboundedContinuousTensorSpec((1,), dtype=torch.float64) + ... self.done_spec = UnboundedContinuousTensorSpec((1,), dtype=torch.bool) + ... def _reset(self, data=None): + ... return TensorDict({"done": torch.zeros((1,), dtype=torch.bool), **self.observation_spec.rand()}, []) + ... def _step(self, data): + ... assert data["action"].dtype == torch.float64 + ... reward = self.reward_spec.rand() + ... done = torch.zeros((1,), dtype=torch.bool) + ... obs = self.observation_spec.rand() + ... assert reward.dtype == torch.float64 + ... assert obs["obs"].dtype == torch.float64 + ... return obs.select().set("next", obs.update({"reward": reward, "done": done})) + ... def _set_seed(self, seed): + ... pass + >>> env = TransformedEnv(MyEnv(), DTypeCastTransform(torch.double, torch.float)) + >>> assert env.action_spec.dtype == torch.float32 + >>> assert env.observation_spec["obs"].dtype == torch.float32 + >>> assert env.reward_spec.dtype == torch.float32, env.reward_spec.dtype + >>> print(env.rollout(2)) + TensorDict( + fields={ + action: Tensor(shape=torch.Size([2]), device=cpu, dtype=torch.float32, is_shared=False), + done: Tensor(shape=torch.Size([2, 1]), device=cpu, dtype=torch.bool, is_shared=False), + next: TensorDict( + fields={ + done: Tensor(shape=torch.Size([2, 1]), device=cpu, dtype=torch.bool, is_shared=False), + obs: Tensor(shape=torch.Size([2]), device=cpu, dtype=torch.float32, is_shared=False), + reward: Tensor(shape=torch.Size([2, 1]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([2]), + device=cpu, + is_shared=False), + obs: Tensor(shape=torch.Size([2]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([2]), + device=cpu, + is_shared=False) + >>> assert env.transform.in_keys == ["obs", "reward"] + >>> assert env.transform.in_keys_inv == ["action"] """ @@ -2370,29 +2447,102 @@ class DoubleToFloat(Transform): def __init__( self, + dtype_in: torch.dtype, + dtype_out: torch.dtype, in_keys: Optional[Sequence[NestedKey]] = None, in_keys_inv: Optional[Sequence[NestedKey]] = None, ): + self.dtype_in = dtype_in + self.dtype_out = dtype_out + if in_keys is None: + self._keys_unset = True + in_keys = [] + else: + self._keys_unset = False + if in_keys_inv is None: + self._keys_inv_unset = True + in_keys_inv = [] + else: + self._keys_inv_unset = False + super().__init__(in_keys=in_keys, in_keys_inv=in_keys_inv) + def _set_in_keys(self): + env_base = self.parent + if env_base is not None: + # retrieve the specs that are self.dtype_in + if self._keys_unset: + in_keys = [] + observation_spec = env_base.observation_spec + for key, spec in observation_spec.items(True, True): + if spec.dtype == self.dtype_in: + in_keys.append(unravel_key(key)) + reward_spec = env_base.reward_spec + if reward_spec.dtype == self.dtype_in: + in_keys.append(unravel_key(env_base.reward_key)) + + self.in_keys = self.out_keys = in_keys + self._keys_unset = False + if self._keys_inv_unset: + in_keys_inv = [] + state_spec = env_base.state_spec + if state_spec is not None: + for key, spec in state_spec.items(True, True): + if spec.dtype == self.dtype_in: + in_keys_inv.append(unravel_key(key)) + action_spec = env_base.action_spec + if action_spec.dtype == self.dtype_in: + in_keys_inv.append(unravel_key(env_base.action_key)) + self.in_keys_inv = self.out_keys_inv = in_keys_inv + self._keys_inv_unset = False + self._container.empty_cache() + + @dispatch(source="in_keys", dest="out_keys") + def forward(self, tensordict: TensorDictBase) -> TensorDictBase: + """Reads the input tensordict, and for the selected keys, applies the transform.""" + if self._keys_unset: + self._set_in_keys() + for in_key, data in tensordict.items(True, True): + if data.dtype == self.dtype_in: + out_key = in_key + data = self._apply_transform(data) + tensordict.set(out_key, data) + return tensordict + return super().forward(tensordict) + + def _inv_call(self, tensordict: TensorDictBase) -> TensorDictBase: + if self._keys_inv_unset: + self._set_in_keys() + # we can't differentiate between content of forward and inverse + tensordict = tensordict.clone(False) + for in_key, data in tensordict.items(True, True): + if data.dtype == self.dtype_out: + out_key = in_key + data = self._inv_apply_transform(data) + tensordict.set(out_key, data) + return tensordict + return super()._inv_call(tensordict) + def _apply_transform(self, obs: torch.Tensor) -> torch.Tensor: - return obs.to(torch.float) + return obs.to(self.dtype_out) def _inv_apply_transform(self, obs: torch.Tensor) -> torch.Tensor: - return obs.to(torch.double) + return obs.to(self.dtype_in) def _transform_spec(self, spec: TensorSpec) -> None: if isinstance(spec, CompositeSpec): for key in spec: self._transform_spec(spec[key]) else: - spec.dtype = torch.float + spec.dtype = self.dtype_out space = spec.space if isinstance(space, ContinuousBox): - space.minimum = space.minimum.to(torch.float) - space.maximum = space.maximum.to(torch.float) + space.minimum = space.minimum.to(self.dtype_out) + space.maximum = space.maximum.to(self.dtype_out) def transform_input_spec(self, input_spec: TensorSpec) -> TensorSpec: + if self._keys_inv_unset: + self._set_in_keys() action_spec = input_spec["_action_spec"] state_spec = input_spec["_state_spec"] for key in self.in_keys_inv: @@ -2402,25 +2552,32 @@ def transform_input_spec(self, input_spec: TensorSpec) -> TensorSpec: _spec = state_spec else: raise KeyError(f"Key {key} not found in state_spec and action_spec.") - if _spec[key].dtype is not torch.double: + if _spec[key].dtype != self.dtype_in: raise TypeError( - f"input_spec[{key}].dtype is not double: {input_spec[key].dtype}" + f"input_spec[{key}].dtype is not {self.dtype_in}: {input_spec[key].dtype}" ) self._transform_spec(_spec[key]) return input_spec @_apply_to_composite def transform_reward_spec(self, reward_spec: TensorSpec) -> TensorSpec: + if self._keys_unset: + self._set_in_keys() reward_key = self.parent.reward_key if self.parent is not None else "reward" if unravel_key(reward_key) in self.in_keys: - if reward_spec.dtype is not torch.double: - raise TypeError("reward_spec.dtype is not double") + if reward_spec.dtype != self.dtype_in: + raise TypeError(f"reward_spec.dtype is not {self.dtype_in}") self._transform_spec(reward_spec) return reward_spec - @_apply_to_composite def transform_observation_spec(self, observation_spec: TensorSpec) -> TensorSpec: + if self._keys_unset: + self._set_in_keys() + return self._transform_observation_spec(observation_spec) + + @_apply_to_composite + def _transform_observation_spec(self, observation_spec: TensorSpec) -> TensorSpec: self._transform_spec(observation_spec) return observation_spec @@ -2432,6 +2589,115 @@ def __repr__(self) -> str: return s +class DoubleToFloat(DTypeCastTransform): + """Casts one dtype to another for selected keys. + + Depending on whether the ``in_keys`` or ``in_keys_inv`` are provided + during construction, the class behaviour will change: + + * If the keys are provided, those entries and those entries only will be + transformed from ``float64`` to ``float32`` entries; + * If the keys are not provided and the object is within an environment + register of transforms, the input and output specs that have a dtype + set to ``float64`` will be used as in_keys_inv / in_keys respectively. + * If the keys are not provided and the object is used without an + environment, the ``forward`` / ``inverse`` pass will scan through the + input tensordict for all float64 values and map them to a float32 + tensor. For large data structures, this can impact performance as this + scanning doesn't come for free. The keys to be + transformed will not be cached. + + Args: + in_keys (sequence of NestedKey, optional): list of double keys to be converted to + float before being exposed to external objects and functions. + in_keys_inv (sequence of NestedKey, optional): list of float keys to be converted to + double before being passed to the contained base_env or storage. + + Examples: + >>> td = TensorDict( + ... {'obs': torch.ones(1, dtype=torch.double), + ... 'not_transformed': torch.ones(1, dtype=torch.double), + ... }, []) + >>> transform = DoubleToFloat(in_keys=["obs"]) + >>> _ = transform(td) + >>> print(td.get("obs").dtype) + torch.float32 + >>> print(td.get("not_transformed").dtype) + torch.float64 + + In "automatic" mode, all float64 entries are transformed: + + Examples: + >>> td = TensorDict( + ... {'obs': torch.ones(1, dtype=torch.double), + ... 'not_transformed': torch.ones(1, dtype=torch.double), + ... }, []) + >>> transform = DoubleToFloat() + >>> _ = transform(td) + >>> print(td.get("obs").dtype) + torch.float32 + >>> print(td.get("not_transformed").dtype) + torch.float32 + + The same behaviour is the rule when environments are constructedw without + specifying the transform keys: + + Examples: + >>> class MyEnv(EnvBase): + ... def __init__(self): + ... super().__init__() + ... self.observation_spec = CompositeSpec(obs=UnboundedContinuousTensorSpec((), dtype=torch.float64)) + ... self.action_spec = UnboundedContinuousTensorSpec((), dtype=torch.float64) + ... self.reward_spec = UnboundedContinuousTensorSpec((1,), dtype=torch.float64) + ... self.done_spec = UnboundedContinuousTensorSpec((1,), dtype=torch.bool) + ... def _reset(self, data=None): + ... return TensorDict({"done": torch.zeros((1,), dtype=torch.bool), **self.observation_spec.rand()}, []) + ... def _step(self, data): + ... assert data["action"].dtype == torch.float64 + ... reward = self.reward_spec.rand() + ... done = torch.zeros((1,), dtype=torch.bool) + ... obs = self.observation_spec.rand() + ... assert reward.dtype == torch.float64 + ... assert obs["obs"].dtype == torch.float64 + ... return obs.select().set("next", obs.update({"reward": reward, "done": done})) + ... def _set_seed(self, seed): + ... pass + >>> env = TransformedEnv(MyEnv(), DoubleToFloat()) + >>> assert env.action_spec.dtype == torch.float32 + >>> assert env.observation_spec["obs"].dtype == torch.float32 + >>> assert env.reward_spec.dtype == torch.float32, env.reward_spec.dtype + >>> print(env.rollout(2)) + TensorDict( + fields={ + action: Tensor(shape=torch.Size([2]), device=cpu, dtype=torch.float32, is_shared=False), + done: Tensor(shape=torch.Size([2, 1]), device=cpu, dtype=torch.bool, is_shared=False), + next: TensorDict( + fields={ + done: Tensor(shape=torch.Size([2, 1]), device=cpu, dtype=torch.bool, is_shared=False), + obs: Tensor(shape=torch.Size([2]), device=cpu, dtype=torch.float32, is_shared=False), + reward: Tensor(shape=torch.Size([2, 1]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([2]), + device=cpu, + is_shared=False), + obs: Tensor(shape=torch.Size([2]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([2]), + device=cpu, + is_shared=False) + >>> assert env.transform.in_keys == ["obs", "reward"] + >>> assert env.transform.in_keys_inv == ["action"] + + """ + + invertible = True + + def __init__( + self, + in_keys: Optional[Sequence[NestedKey]] = None, + in_keys_inv: Optional[Sequence[NestedKey]] = None, + ): + super().__init__(torch.double, torch.float, in_keys, in_keys_inv) + + class CatTensors(Transform): """Concatenates several keys in a single tensor. From fbfaa81b3702edcbca3896a5b4c2b2a1c34abbca Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 11 Aug 2023 18:41:55 +0200 Subject: [PATCH 037/148] [Refactor] Change objectives parameter/buffer/target logic (#1424) --- test/test_cost.py | 388 +++++++++++++++++++++++------- torchrl/modules/utils/__init__.py | 64 ----- torchrl/objectives/common.py | 357 +++++++++++---------------- torchrl/objectives/utils.py | 34 +-- 4 files changed, 455 insertions(+), 388 deletions(-) diff --git a/test/test_cost.py b/test/test_cost.py index 9849fb09801..38faaaf1048 100644 --- a/test/test_cost.py +++ b/test/test_cost.py @@ -20,6 +20,7 @@ ProbabilisticTensorDictSequential, ProbabilisticTensorDictSequential as ProbSeq, TensorDictModule as Mod, + TensorDictSequential, TensorDictSequential as Seq, ) @@ -45,6 +46,7 @@ ) from mocking_classes import ContinuousActionConvMockEnv from tensordict.nn import get_functional, NormalParamExtractor, TensorDictModule +from tensordict.nn.utils import Buffer # from torchrl.data.postprocs.utils import expand_as_right from tensordict.tensordict import assert_allclose_td, TensorDict @@ -86,7 +88,6 @@ QValueModule, ValueOperator, ) -from torchrl.modules.utils import Buffer from torchrl.objectives import ( A2CLoss, ClipPPOLoss, @@ -437,7 +438,8 @@ def test_dqn(self, delay_value, device, action_spec_type, td_est): # Check param update effect on targets target_value = loss_fn.target_value_network_params.clone() for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) target_value2 = loss_fn.target_value_network_params.clone() if loss_fn.delay_value: assert_allclose_td(target_value, target_value2) @@ -494,7 +496,8 @@ def test_dqn_batcher(self, n, delay_value, device, action_spec_type, gamma=0.9): # Check param update effect on targets target_value = loss_fn.target_value_network_params.clone() for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) target_value2 = loss_fn.target_value_network_params.clone() if loss_fn.delay_value: assert_allclose_td(target_value, target_value2) @@ -621,7 +624,8 @@ def test_distributional_dqn( # Check param update effect on targets target_value = loss_fn.target_value_network_params.clone() for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) target_value2 = loss_fn.target_value_network_params.clone() if loss_fn.delay_value: assert_allclose_td(target_value, target_value2) @@ -889,7 +893,8 @@ def test_qmixer(self, delay_value, device, action_spec_type, td_est): # Check param update effect on targets target_value = loss_fn.target_local_value_network_params.clone() for p in loss_fn.parameters(): - p.data += 3 + if p.requires_grad: + p.data += 3 target_value2 = loss_fn.target_local_value_network_params.clone() if loss_fn.delay_value: assert_allclose_td(target_value, target_value2) @@ -899,7 +904,8 @@ def test_qmixer(self, delay_value, device, action_spec_type, td_est): # Check param update effect on targets target_value = loss_fn.target_mixer_network_params.clone() for p in loss_fn.parameters(): - p.data += 3 + if p.requires_grad: + p.data += 3 target_value2 = loss_fn.target_mixer_network_params.clone() if loss_fn.delay_value: assert_allclose_td(target_value, target_value2) @@ -909,7 +915,8 @@ def test_qmixer(self, delay_value, device, action_spec_type, td_est): # check that policy is updated after parameter update parameters = [p.clone() for p in actor.parameters()] for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) assert all((p1 != p2).all() for p1, p2 in zip(parameters, actor.parameters())) @pytest.mark.parametrize("n", range(4)) @@ -956,7 +963,8 @@ def test_qmix_batcher(self, n, delay_value, device, action_spec_type, gamma=0.9) # Check param update effect on targets target_value = loss_fn.target_local_value_network_params.clone() for p in loss_fn.parameters(): - p.data += 3 + if p.requires_grad: + p.data += 3 target_value2 = loss_fn.target_local_value_network_params.clone() if loss_fn.delay_value: assert_allclose_td(target_value, target_value2) @@ -966,7 +974,8 @@ def test_qmix_batcher(self, n, delay_value, device, action_spec_type, gamma=0.9) # Check param update effect on targets target_value = loss_fn.target_mixer_network_params.clone() for p in loss_fn.parameters(): - p.data += 3 + if p.requires_grad: + p.data += 3 target_value2 = loss_fn.target_mixer_network_params.clone() if loss_fn.delay_value: assert_allclose_td(target_value, target_value2) @@ -976,7 +985,8 @@ def test_qmix_batcher(self, n, delay_value, device, action_spec_type, gamma=0.9) # check that policy is updated after parameter update parameters = [p.clone() for p in actor.parameters()] for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) assert all((p1 != p2).all() for p1, p2 in zip(parameters, actor.parameters())) @pytest.mark.parametrize( @@ -1372,7 +1382,8 @@ def test_ddpg(self, delay_actor, delay_value, device, td_est): target_value = [p.clone() for p in loss_fn.target_value_network_params.values()] _i = -1 for _i, p in enumerate(loss_fn.parameters()): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) assert _i >= 0 target_actor2 = [ p.clone() for p in loss_fn.target_actor_network_params.values() @@ -1396,7 +1407,8 @@ def test_ddpg(self, delay_actor, delay_value, device, td_est): # check that policy is updated after parameter update parameters = [p.clone() for p in actor.parameters()] for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) assert all((p1 != p2).all() for p1, p2 in zip(parameters, actor.parameters())) @pytest.mark.parametrize("device", get_default_devices()) @@ -1941,7 +1953,14 @@ def test_td3( assert len({p for n, p in named_buffers}) == len(list(named_buffers)) for name, p in named_parameters: - assert p.grad.norm() > 0.0, f"parameter {name} has a null gradient" + if not name.startswith("target_"): + assert ( + p.grad is not None and p.grad.norm() > 0.0 + ), f"parameter {name} (shape: {p.shape}) has a null gradient" + else: + assert ( + p.grad is None or p.grad.norm() == 0.0 + ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" @pytest.mark.skipif(not _has_functorch, reason="functorch not installed") @pytest.mark.parametrize("device", get_default_devices()) @@ -2076,8 +2095,16 @@ def test_td3_batcher( sum([item for _, item in loss_ms.items()]).backward() named_parameters = loss_fn.named_parameters() + for name, p in named_parameters: - assert p.grad.norm() > 0.0, f"parameter {name} has null gradient" + if not name.startswith("target_"): + assert ( + p.grad is not None and p.grad.norm() > 0.0 + ), f"parameter {name} (shape: {p.shape}) has a null gradient" + else: + assert ( + p.grad is None or p.grad.norm() == 0.0 + ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" # Check param update effect on targets target_actor = loss_fn.target_actor_network_params.clone().values( @@ -2087,7 +2114,8 @@ def test_td3_batcher( include_nested=True, leaves_only=True ) for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) target_actor2 = loss_fn.target_actor_network_params.clone().values( include_nested=True, leaves_only=True ) @@ -2115,7 +2143,8 @@ def test_td3_batcher( assert len(actorp_set.intersection(loss_fnp_set)) == len(actorp_set) parameters = [p.clone() for p in actor.parameters()] for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) assert all((p1 != p2).all() for p1, p2 in zip(parameters, actor.parameters())) @pytest.mark.parametrize( @@ -2589,7 +2618,14 @@ def test_sac( assert len({p for n, p in named_buffers}) == len(list(named_buffers)) for name, p in named_parameters: - assert p.grad.norm() > 0.0, f"parameter {name} has a null gradient" + if not name.startswith("target_"): + assert ( + p.grad is not None and p.grad.norm() > 0.0 + ), f"parameter {name} (shape: {p.shape}) has a null gradient" + else: + assert ( + p.grad is None or p.grad.norm() == 0.0 + ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" @pytest.mark.parametrize("device", get_default_devices()) @pytest.mark.parametrize("separate_losses", [False, True]) @@ -2758,7 +2794,14 @@ def test_sac_batcher( sum([item for _, item in loss_ms.items()]).backward() named_parameters = loss_fn.named_parameters() for name, p in named_parameters: - assert p.grad.norm() > 0.0, f"parameter {name} has null gradient" + if not name.startswith("target_"): + assert ( + p.grad is not None and p.grad.norm() > 0.0 + ), f"parameter {name} (shape: {p.shape}) has a null gradient" + else: + assert ( + p.grad is None or p.grad.norm() == 0.0 + ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" # Check param update effect on targets target_actor = [ @@ -2781,7 +2824,8 @@ def test_sac_batcher( ) ] for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) target_actor2 = [ p.clone() for p in loss_fn.target_actor_network_params.values( @@ -2830,7 +2874,8 @@ def test_sac_batcher( # check that policy is updated after parameter update parameters = [p.clone() for p in actor.parameters()] for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) assert all( (p1 != p2).all() for p1, p2 in zip(parameters, actor.parameters()) ) @@ -3205,7 +3250,14 @@ def test_discrete_sac( assert len({p for n, p in named_buffers}) == len(list(named_buffers)) for name, p in named_parameters: - assert p.grad.norm() > 0.0, f"parameter {name} has a null gradient" + if not name.startswith("target_"): + assert ( + p.grad is not None and p.grad.norm() > 0.0 + ), f"parameter {name} (shape: {p.shape}) has a null gradient" + else: + assert ( + p.grad is None or p.grad.norm() == 0.0 + ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" @pytest.mark.parametrize("n", list(range(4))) @pytest.mark.parametrize("delay_qvalue", (True, False)) @@ -3273,7 +3325,14 @@ def test_discrete_sac_batcher( sum([item for _, item in loss_ms.items()]).backward() named_parameters = loss_fn.named_parameters() for name, p in named_parameters: - assert p.grad.norm() > 0.0, f"parameter {name} has null gradient" + if not name.startswith("target_"): + assert ( + p.grad is not None and p.grad.norm() > 0.0 + ), f"parameter {name} (shape: {p.shape}) has a null gradient" + else: + assert ( + p.grad is None or p.grad.norm() == 0.0 + ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" # Check param update effect on targets target_actor = [ @@ -3289,7 +3348,8 @@ def test_discrete_sac_batcher( ) ] for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) target_actor2 = [ p.clone() for p in loss_fn.target_actor_network_params.values( @@ -3320,7 +3380,8 @@ def test_discrete_sac_batcher( # check that policy is updated after parameter update parameters = [p.clone() for p in actor.parameters()] for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) assert all((p1 != p2).all() for p1, p2 in zip(parameters, actor.parameters())) @pytest.mark.parametrize( @@ -3753,7 +3814,14 @@ def test_redq(self, delay_qvalue, num_qvalue, device, td_est): assert len({p for n, p in named_buffers}) == len(list(named_buffers)) for name, p in named_parameters: - assert p.grad.norm() > 0.0, f"parameter {name} has a null gradient" + if not name.startswith("target_"): + assert ( + p.grad is not None and p.grad.norm() > 0.0 + ), f"parameter {name} (shape: {p.shape}) has a null gradient" + else: + assert ( + p.grad is None or p.grad.norm() == 0.0 + ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" @pytest.mark.parametrize("separate_losses", [False, True]) def test_redq_separate_losses(self, separate_losses): @@ -4108,7 +4176,14 @@ def test_redq_batcher(self, n, delay_qvalue, num_qvalue, device, gamma=0.9): sum([item for _, item in loss_ms.items()]).backward() named_parameters = loss_fn.named_parameters() for name, p in named_parameters: - assert p.grad.norm() > 0.0, f"parameter {name} has null gradient" + if not name.startswith("target_"): + assert ( + p.grad is not None and p.grad.norm() > 0.0 + ), f"parameter {name} (shape: {p.shape}) has a null gradient" + else: + assert ( + p.grad is None or p.grad.norm() == 0.0 + ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" # Check param update effect on targets target_actor = loss_fn.target_actor_network_params.clone().values( @@ -4118,7 +4193,8 @@ def test_redq_batcher(self, n, delay_qvalue, num_qvalue, device, gamma=0.9): include_nested=True, leaves_only=True ) for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) target_actor2 = loss_fn.target_actor_network_params.clone().values( include_nested=True, leaves_only=True ) @@ -4148,7 +4224,8 @@ def test_redq_batcher(self, n, delay_qvalue, num_qvalue, device, gamma=0.9): assert len(actorp_set.intersection(loss_fnp_set)) == len(actorp_set) parameters = [p.clone() for p in actor.parameters()] for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) assert all( (p1 != p2).all() for p1, p2 in zip(parameters, actor.parameters()) ) @@ -4503,7 +4580,14 @@ def test_cql( assert len({p for n, p in named_buffers}) == len(list(named_buffers)) for name, p in named_parameters: - assert p.grad.norm() > 0.0, f"parameter {name} has a null gradient" + if not name.startswith("target_"): + assert ( + p.grad is not None and p.grad.norm() > 0.0 + ), f"parameter {name} (shape: {p.shape}) has a null gradient" + else: + assert ( + p.grad is None or p.grad.norm() == 0.0 + ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" @pytest.mark.parametrize("n", list(range(4))) @pytest.mark.parametrize("delay_actor", (True, False)) @@ -4573,7 +4657,14 @@ def test_cql_batcher( sum([item for _, item in loss_ms.items()]).backward() named_parameters = loss_fn.named_parameters() for name, p in named_parameters: - assert p.grad.norm() > 0.0, f"parameter {name} has null gradient" + if not name.startswith("target_"): + assert ( + p.grad is not None and p.grad.norm() > 0.0 + ), f"parameter {name} (shape: {p.shape}) has a null gradient" + else: + assert ( + p.grad is None or p.grad.norm() == 0.0 + ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" # Check param update effect on targets target_actor = [ @@ -4589,7 +4680,8 @@ def test_cql_batcher( ) ] for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) target_actor2 = [ p.clone() for p in loss_fn.target_actor_network_params.values( @@ -4622,7 +4714,8 @@ def test_cql_batcher( # check that policy is updated after parameter update parameters = [p.clone() for p in actor.parameters()] for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) assert all( (p1 != p2).all() for p1, p2 in zip(parameters, actor.parameters()) ) @@ -4863,8 +4956,8 @@ def test_ppo(self, loss_class, device, gradient_mode, advantage, td_est): assert "actor" not in name assert "critic" in name if p.grad is None: - assert "actor" in name - assert "critic" not in name + assert ("actor" in name) or ("target_" in name) + assert ("critic" not in name) or ("target_" in name) assert counter == 2 value.zero_grad() @@ -4877,8 +4970,8 @@ def test_ppo(self, loss_class, device, gradient_mode, advantage, td_est): assert "actor" in name assert "critic" not in name if p.grad is None: - assert "actor" not in name - assert "critic" in name + assert ("actor" not in name) or ("target_" in name) + assert ("critic" in name) or ("target_" in name) assert counter == 2 actor.zero_grad() @@ -4933,8 +5026,8 @@ def test_ppo_shared(self, loss_class, device, advantage): assert "actor" not in name assert "critic" in name if p.grad is None: - assert "actor" in name - assert "critic" not in name + assert ("actor" in name) or ("target_" in name) + assert ("critic" not in name) or ("target_" in name) assert counter == 2 value.zero_grad() @@ -4947,8 +5040,8 @@ def test_ppo_shared(self, loss_class, device, advantage): assert "actor" in name assert "critic" not in name if p.grad is None: - assert "actor" not in name - assert "critic" in name + assert ("actor" not in name) or ("target_" in name) + assert ("critic" in name) or ("target_" in name) actor.zero_grad() assert counter == 4 @@ -5217,8 +5310,8 @@ def test_ppo_tensordict_keys_run(self, loss_class, advantage, td_est): assert "actor" not in name assert "critic" in name if p.grad is None: - assert "actor" in name - assert "critic" not in name + assert ("actor" in name) or ("target" in name) + assert ("critic" not in name) or ("target" in name) assert counter == 2 value.zero_grad() @@ -5231,8 +5324,8 @@ def test_ppo_tensordict_keys_run(self, loss_class, advantage, td_est): assert "actor" in name assert "critic" not in name if p.grad is None: - assert "actor" not in name - assert "critic" in name + assert ("actor" not in name) or ("target" in name) + assert ("critic" in name) or ("target" in name) assert counter == 2 actor.zero_grad() @@ -5511,8 +5604,8 @@ def test_a2c(self, device, gradient_mode, advantage, td_est): assert "actor" not in name assert "critic" in name if p.grad is None: - assert "actor" in name - assert "critic" not in name + assert ("actor" in name) or ("target_" in name) + assert ("critic" not in name) or ("target_" in name) value.zero_grad() loss_objective.backward() @@ -5522,8 +5615,8 @@ def test_a2c(self, device, gradient_mode, advantage, td_est): assert "actor" in name assert "critic" not in name if p.grad is None: - assert "actor" not in name - assert "critic" in name + assert ("actor" not in name) or ("target_" in name) + assert ("critic" in name) or ("target_" in name) actor.zero_grad() # test reset @@ -5557,8 +5650,8 @@ def test_a2c_separate_losses(self, separate_losses): assert "actor" not in name assert "critic" in name if p.grad is None: - assert "actor" in name - assert "critic" not in name + assert ("actor" in name) or ("target_" in name) + assert ("critic" not in name) or ("target_" in name) else: if p.grad is not None and p.grad.norm() > 0.0: assert ("actor" in name) or ("critic" in name) @@ -5573,8 +5666,8 @@ def test_a2c_separate_losses(self, separate_losses): assert "actor" in name assert "critic" not in name if p.grad is None: - assert "actor" not in name - assert "critic" in name + assert ("actor" not in name) or ("target_" in name) + assert ("critic" in name) or ("target_" in name) actor.zero_grad() # test reset @@ -5628,8 +5721,8 @@ def test_a2c_diff(self, device, gradient_mode, advantage): assert "actor" not in name assert "critic" in name if p.grad is None: - assert "actor" in name - assert "critic" not in name + assert ("actor" in name) or ("target_" in name) + assert ("critic" not in name) or ("target_" in name) for param in params: param.grad = None @@ -5640,8 +5733,8 @@ def test_a2c_diff(self, device, gradient_mode, advantage): assert "actor" in name assert "critic" not in name if p.grad is None: - assert "actor" not in name - assert "critic" in name + assert ("actor" not in name) or ("target_" in name) + assert ("critic" in name) or ("target_" in name) for param in params: param.grad = None @@ -5744,8 +5837,8 @@ def test_a2c_tensordict_keys_run(self, device): if p.grad is not None and p.grad.norm() > 0.0: assert "actor" not in name if p.grad is None: - assert "actor" in name - assert "critic" not in name + assert ("actor" in name) or ("target_" in name) + assert ("critic" not in name) or ("target_" in name) value.zero_grad() loss_objective.backward() @@ -5755,8 +5848,8 @@ def test_a2c_tensordict_keys_run(self, device): assert "actor" in name assert "critic" not in name if p.grad is None: - assert "actor" not in name - assert "critic" in name + assert ("actor" not in name) or ("target_" in name) + assert ("critic" in name) or ("target_" in name) actor.zero_grad() # test reset @@ -6967,7 +7060,14 @@ def test_iql( assert len({p for n, p in named_buffers}) == len(list(named_buffers)) for name, p in named_parameters: - assert p.grad.norm() > 0.0, f"parameter {name} has a null gradient" + if not name.startswith("target_"): + assert ( + p.grad is not None and p.grad.norm() > 0.0 + ), f"parameter {name} (shape: {p.shape}) has a null gradient" + else: + assert ( + p.grad is None or p.grad.norm() == 0.0 + ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" @pytest.mark.parametrize("separate_losses", [False, True]) def test_iql_separate_losses(self, separate_losses): @@ -7189,7 +7289,14 @@ def test_iql_batcher( sum([item for _, item in loss_ms.items()]).backward() named_parameters = loss_fn.named_parameters() for name, p in named_parameters: - assert p.grad.norm() > 0.0, f"parameter {name} has null gradient" + if not name.startswith("target_"): + assert ( + p.grad is not None and p.grad.norm() > 0.0 + ), f"parameter {name} (shape: {p.shape}) has a null gradient" + else: + assert ( + p.grad is None or p.grad.norm() == 0.0 + ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" # Check param update effect on targets target_qvalue = [ @@ -7199,7 +7306,8 @@ def test_iql_batcher( ) ] for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) target_qvalue2 = [ p.clone() for p in loss_fn.target_qvalue_network_params.values( @@ -7218,7 +7326,8 @@ def test_iql_batcher( # check that policy is updated after parameter update parameters = [p.clone() for p in actor.parameters()] for p in loss_fn.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) assert all((p1 != p2).all() for p1, p2 in zip(parameters, actor.parameters())) @pytest.mark.parametrize( @@ -7328,7 +7437,10 @@ def test_iql_notensordict(self, action_key, observation_key, reward_key, done_ke @pytest.mark.parametrize("create_target_params", [True, False]) -def test_param_buffer_types(create_target_params): +@pytest.mark.parametrize( + "cast", [None, torch.float, torch.double, *get_default_devices()] +) +def test_param_buffer_types(create_target_params, cast): class MyLoss(LossModule): def __init__(self, actor_network): super().__init__() @@ -7347,16 +7459,25 @@ def _forward_value_estimator_keys(self, **kwargs) -> None: out_keys=["action"], ) loss = MyLoss(actor_module) - assert isinstance(loss.actor_network_params["module", "0", "weight"], nn.Parameter) - assert isinstance( - loss.target_actor_network_params["module", "0", "weight"], nn.Parameter - ) - assert loss.actor_network_params["module", "0", "weight"].requires_grad - assert not loss.target_actor_network_params["module", "0", "weight"].requires_grad - assert isinstance(loss.actor_network_params["module", "0", "bias"], nn.Parameter) - assert isinstance( - loss.target_actor_network_params["module", "0", "bias"], nn.Parameter - ) + if cast is not None: + loss.to(cast) + for name in ("weight", "bias"): + param = loss.actor_network_params["module", "0", name] + assert isinstance(param, nn.Parameter) + target = loss.target_actor_network_params["module", "0", name] + if create_target_params: + assert target.data_ptr() != param.data_ptr() + else: + assert target.data_ptr() == param.data_ptr() + assert param.requires_grad + assert not target.requires_grad + if cast is not None: + if isinstance(cast, torch.dtype): + assert param.dtype == cast + assert target.dtype == cast + else: + assert param.device == cast + assert target.device == cast if create_target_params: assert ( @@ -7451,7 +7572,7 @@ def __init__(self): module = custom_module_error().to(device) with pytest.raises( - RuntimeError, match="Your module seems to have a target tensor list " + ValueError, match="The loss_module must be a LossModule instance" ): if mode == "hard": upd = HardUpdate( @@ -7482,7 +7603,10 @@ def _forward_value_estimator_keys(self, **kwargs) -> None: pass module = custom_module(delay_module=False) - with pytest.raises(RuntimeError, match="The target and source data are identical"): + with pytest.raises( + RuntimeError, + match="Did not find any target parameters or buffers in the loss module", + ): if mode == "hard": upd = HardUpdate( module, value_network_update_interval=value_network_update_interval @@ -7495,8 +7619,9 @@ def _forward_value_estimator_keys(self, **kwargs) -> None: else: raise NotImplementedError - with pytest.warns(UserWarning, match="No target network updater has been"): - module = custom_module().to(device).to(dtype) + # this is now allowed + # with pytest.warns(UserWarning, match="No target network updater has been"): + # module = custom_module().to(device).to(dtype) if mode == "soft": with pytest.raises(ValueError, match="One and only one argument"): @@ -7506,6 +7631,7 @@ def _forward_value_estimator_keys(self, **kwargs) -> None: tau=0.1, ) + module = custom_module(delay_module=True) _ = module.module1_params with pytest.warns(UserWarning, match="No target network updater has been"): _ = module.target_module1_params @@ -8731,9 +8857,10 @@ def _forward_value_estimator_keys(self, **kwargs) -> None: loss = MyLoss(actor_network, value_network) # modify params for p in loss.parameters(): - p.data += torch.randn_like(p) + if p.requires_grad: + p.data += torch.randn_like(p) - assert len(list(loss.parameters())) == 6 + assert len([p for p in loss.parameters() if p.requires_grad]) == 6 assert ( len(loss.actor_network_params.keys(include_nested=True, leaves_only=True)) == 4 ) @@ -9282,6 +9409,105 @@ def test_single_call(self, has_target, value_key, single_call, detach_next=True) assert (value != value_).all() +class TestBuffer: + # @pytest.mark.parametrize('dtype', (torch.double, torch.float, torch.half)) + # def test_param_cast(self, dtype): + # param = nn.Parameter(torch.zeros(3)) + # idb = param.data_ptr() + # param = param.to(dtype) + # assert param.data_ptr() == idb + # assert param.dtype == dtype + # assert param.data.dtype == dtype + # @pytest.mark.parametrize('dtype', (torch.double, torch.float, torch.half)) + # def test_buffer_cast(self, dtype): + # buffer = Buffer(torch.zeros(3)) + # idb = buffer.data_ptr() + # buffer = buffer.to(dtype) + # assert isinstance(buffer, Buffer) + # assert buffer.data_ptr() == idb + # assert buffer.dtype == dtype + # assert buffer.data.dtype == dtype + + @pytest.mark.parametrize("create_target_params", [True, False]) + @pytest.mark.parametrize( + "dest", [torch.float, torch.double, torch.half, *get_default_devices()] + ) + def test_module_cast(self, create_target_params, dest): + # test that when casting a loss module, all the tensors (params and buffers) + # are properly cast + class DummyModule(LossModule): + def __init__(self): + common = nn.Linear(3, 4) + actor = nn.Linear(4, 4) + value = nn.Linear(4, 1) + common = TensorDictModule(common, in_keys=["obs"], out_keys=["hidden"]) + actor = TensorDictSequential( + common, + TensorDictModule(actor, in_keys=["hidden"], out_keys=["action"]), + ) + value = TensorDictSequential( + common, + TensorDictModule(value, in_keys=["hidden"], out_keys=["value"]), + ) + super().__init__() + self.convert_to_functional( + actor, + "actor", + expand_dim=None, + create_target_params=False, + compare_against=None, + ) + self.convert_to_functional( + value, + "value", + expand_dim=2, + create_target_params=create_target_params, + compare_against=actor.parameters(), + ) + + mod = DummyModule() + v_p1 = set(mod.value_params.values(True, True)).union( + set(mod.actor_params.values(True, True)) + ) + v_params1 = set(mod.parameters()) + v_buffers1 = set(mod.buffers()) + mod.to(dest) + v_p2 = set(mod.value_params.values(True, True)).union( + set(mod.actor_params.values(True, True)) + ) + v_params2 = set(mod.parameters()) + v_buffers2 = set(mod.buffers()) + assert v_p1 == v_p2 + assert v_params1 == v_params2 + assert v_buffers1 == v_buffers2 + for p in mod.parameters(): + assert isinstance(p, nn.Parameter) + for p in mod.buffers(): + assert isinstance(p, Buffer) + for p in mod.actor_params.values(True, True): + assert isinstance(p, (nn.Parameter, Buffer)) + for p in mod.value_params.values(True, True): + assert isinstance(p, (nn.Parameter, Buffer)) + if isinstance(dest, torch.dtype): + for p in mod.parameters(): + assert p.dtype == dest + for p in mod.buffers(): + assert p.dtype == dest + for p in mod.actor_params.values(True, True): + assert p.dtype == dest + for p in mod.value_params.values(True, True): + assert p.dtype == dest + else: + for p in mod.parameters(): + assert p.device == dest + for p in mod.buffers(): + assert p.device == dest + for p in mod.actor_params.values(True, True): + assert p.device == dest + for p in mod.value_params.values(True, True): + assert p.device == dest + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/torchrl/modules/utils/__init__.py b/torchrl/modules/utils/__init__.py index b9b641e23d5..7a7f766a44c 100644 --- a/torchrl/modules/utils/__init__.py +++ b/torchrl/modules/utils/__init__.py @@ -25,67 +25,3 @@ def __instancecheck__(self, instance): from .mappings import biased_softplus, inv_softplus, mappings - - -class Buffer(torch.Tensor, metaclass=_ParameterMeta): - r"""A kind of Tensor that is to be considered a module parameter. - - Parameters are :class:`~torch.Tensor` subclasses, that have a - very special property when used with :class:`Module` s - when they're - assigned as Module attributes they are automatically added to the list of - its parameters, and will appear e.g. in :meth:`~Module.parameters` iterator. - Assigning a Tensor doesn't have such effect. This is because one might - want to cache some temporary state, like last hidden state of the RNN, in - the model. If there was no such class as :class:`Parameter`, these - temporaries would get registered too. - - Args: - data (Tensor): parameter tensor. - requires_grad (bool, optional): if the parameter requires gradient. See - :ref:`locally-disable-grad-doc` for more details. Default: `True` - """ - - def __new__(cls, data=None, requires_grad=False): - if data is None: - data = torch.empty(0) - if type(data) is torch.Tensor or type(data) is Buffer: - # For ease of BC maintenance, keep this path for standard Tensor. - # Eventually (tm), we should change the behavior for standard Tensor to match. - return torch.Tensor._make_subclass(cls, data, requires_grad) - - # Path for custom tensors: set a flag on the instance to indicate parameter-ness. - t = data.detach().requires_grad_(requires_grad) - if type(t) is not type(data): - raise RuntimeError( - f"Creating a Parameter from an instance of type {type(data).__name__} " - "requires that detach() returns an instance of the same type, but return " - f"type {type(t).__name__} was found instead. To use the type as a " - "Parameter, please correct the detach() semantics defined by " - "its __torch_dispatch__() implementation." - ) - t._is_param = True - return t - - # Note: the 3 methods below only apply to standard Tensor. Parameters of custom tensor types - # are still considered that custom tensor type and these methods will not be called for them. - def __deepcopy__(self, memo): - if id(self) in memo: - return memo[id(self)] - else: - result = type(self)( - self.data.clone(memory_format=torch.preserve_format), self.requires_grad - ) - memo[id(self)] = result - return result - - def __repr__(self): - return "Buffer containing:\n" + super(Buffer, self).__repr__() - - def __reduce_ex__(self, proto): - # See Note [Don't serialize hooks] - return ( - torch._utils._rebuild_parameter, - (self.data, self.requires_grad, OrderedDict()), - ) - - __torch_function__ = _disabled_torch_function_impl diff --git a/torchrl/objectives/common.py b/torchrl/objectives/common.py index 2e86631f512..a5fa8c592d5 100644 --- a/torchrl/objectives/common.py +++ b/torchrl/objectives/common.py @@ -10,39 +10,30 @@ from dataclasses import dataclass from typing import Iterator, List, Optional, Tuple -import torch +from tensordict import TensorDictBase from tensordict.nn import ( make_functional, repopulate_module, TensorDictModule, TensorDictModuleBase, + TensorDictParams, ) - -from tensordict.tensordict import TensorDictBase -from torch import nn, Tensor +from torch import nn from torch.nn import Parameter from torchrl._utils import RL_WARNINGS -from torchrl.data import DEVICE_TYPING from torchrl.envs.utils import ExplorationType, set_exploration_type -from torchrl.modules.utils import Buffer -from torchrl.objectives.utils import _cache_values, ValueEstimators +from torchrl.objectives.utils import ValueEstimators from torchrl.objectives.value import ValueEstimatorBase -_has_functorch = False -try: - import functorch as ft # noqa - - _has_functorch = True - FUNCTORCH_ERR = "" -except ImportError: - print( - "failed to import functorch. TorchRL's features that do not require " - "functional programming should work, but functionality and performance " - "may be affected. Consider installing functorch and/or upgrating pytorch." - ) - FUNCTORCH_ERROR = "functorch not installed. Consider installing functorch to use this functionality." + +def _updater_check_forward_prehook(module, *args, **kwargs): + if not all(v for v in module._has_update_associated.values()) and RL_WARNINGS: + warnings.warn( + module.TARGET_NET_WARNING, + category=UserWarning, + ) class LossModule(TensorDictModuleBase): @@ -97,6 +88,13 @@ class _AcceptedKeys: default_value_estimator: ValueEstimators = None SEP = "_sep_" + TARGET_NET_WARNING = ( + "No target network updater has been associated " + "with this loss module, but target parameters have been found. " + "While this is supported, it is expected that the target network " + "updates will be manually performed. You can deactivate this warning " + "by turning the RL_WARNINGS env variable to False." + ) @property def tensor_keys(self) -> _AcceptedKeys: @@ -113,8 +111,9 @@ def __init__(self): self._cache = {} self._param_maps = {} self._value_estimator = None - self._has_update_associated = False + self._has_update_associated = {} self.value_type = self.default_value_estimator + self.register_forward_pre_hook(_updater_check_forward_prehook) # self.register_forward_pre_hook(_parameters_to_tensordict) def _set_deprecated_ctor_keys(self, **kwargs) -> None: @@ -252,15 +251,9 @@ def convert_to_functional( # we transform the buffers in params to make sure they follow the device # as tensor = nn.Parameter(tensor) keeps its identity when moved to another device - def create_buffers(tensor): - if isinstance(tensor, torch.Tensor) and not isinstance( - tensor, (Buffer, nn.Parameter) - ): - return Buffer(tensor, requires_grad=tensor.requires_grad) - return tensor - # separate params and buffers - params_and_buffers = params_and_buffers.apply(create_buffers) + params_and_buffers = TensorDictParams(params_and_buffers, no_convert=True) + # sanity check for key in params_and_buffers.keys(True): if sep in key: raise KeyError( @@ -269,11 +262,6 @@ def create_buffers(tensor): params_and_buffers_flat = params_and_buffers.flatten_keys(sep) buffers = params_and_buffers_flat.select(*buffer_names) params = params_and_buffers_flat.exclude(*buffer_names) - if expand_dim and not _has_functorch: - raise ImportError( - "expanding params is only possible when functorch is installed," - "as this feature requires calls to the vmap operator." - ) if compare_against is not None: compare_against = set(compare_against) else: @@ -299,13 +287,12 @@ def _compare_and_expand(param): ) return p_out - params_udpated = params.apply( + params = params.apply( _compare_and_expand, batch_size=[expand_dim, *params.shape] ) - params = params_udpated buffers = buffers.apply( - lambda buffer: Buffer(buffer.expand(expand_dim, *buffer.shape).clone()), + lambda buffer: buffer.expand(expand_dim, *buffer.shape).clone(), batch_size=[expand_dim, *buffers.shape], ) @@ -320,161 +307,45 @@ def _compare_and_expand(param): prev_set_params = set(self.parameters()) # register parameters and buffers - for key, parameter in params.items(): + for key, parameter in list(params_and_buffers.items(True, True)): if parameter not in prev_set_params: - setattr(self, sep.join([module_name, key]), parameter) - else: - # if the parameter is already present, we register a string pointing - # to is instead. If the string ends with a '_detached' suffix, the - # value will be detached - for _param_name, p in self.named_parameters(): - if parameter is p: - break - else: - raise RuntimeError("parameter not found") - if compare_against is not None and p in compare_against: - _param_name = _param_name + "_detached" - setattr(self, sep.join([module_name, key]), _param_name) - prev_set_buffers = set(self.buffers()) - for key, buffer in buffers.items(): - if buffer not in prev_set_buffers: - self.register_buffer(sep.join([module_name, key]), buffer) - else: - for _buffer_name, b in self.named_buffers(): - if buffer is b: - break - else: - raise RuntimeError("buffer not found") - setattr(self, sep.join([module_name, key]), _buffer_name) - - setattr(self, "_" + param_name, params_and_buffers) - setattr( - self.__class__, - param_name, - property(lambda _self=self: _self._param_getter(module_name)), - ) + pass + elif compare_against is not None and parameter in compare_against: + params_and_buffers.set(key, parameter.data) + + setattr(self, param_name, params_and_buffers) # set the functional module setattr(self, module_name, functional_module) - # creates a map nn.Parameter name -> expanded parameter name - for key, value in params.items(True, True): - if not isinstance(key, tuple): - key = (key,) - if not isinstance(value, nn.Parameter): - # find the param name - for name, param in self.named_parameters(): - if param.data.data_ptr() == value.data_ptr() and param is not value: - self._param_maps[name] = sep.join([module_name, *key]) - break - else: - raise RuntimeError(f"key {key} did not find matching param.") - - name_params_target = "_target_" + module_name + name_params_target = "target_" + module_name if create_target_params: - target_params = params_and_buffers.apply(_make_target_param(clone=True)) - target_params_items = target_params.items(True, True) - target_params_list = [] - for key, val in target_params_items: - if not isinstance(key, tuple): - key = (key,) - name = sep.join([name_params_target, *key]) - self.register_buffer(name, val) - target_params_list.append((name, key)) - setattr(self, name_params_target + "_params", target_params) - else: - setattr(self, name_params_target + "_params", None) - setattr( - self.__class__, - name_params_target[1:] + "_params", - property(lambda _self=self: _self._target_param_getter(module_name)), - ) - - @_cache_values - def _param_getter(self, network_name): - name = "_" + network_name + "_params" - param_name = network_name + "_params" - if name in self.__dict__: - params = getattr(self, name) - if params is not None: - with params.unlock_(): - # get targets and update - for key in params.keys(True, True): - if not isinstance(key, tuple): - key = (key,) - value_to_set = getattr( - self, self.SEP.join([network_name, *key]) - ) - if isinstance(value_to_set, str): - if value_to_set.endswith("_detached"): - value_to_set = value_to_set[:-9] - value_to_set = getattr(self, value_to_set) - is_param = isinstance(value_to_set, nn.Parameter) - is_buffer = isinstance(value_to_set, Buffer) - value_to_set = value_to_set.detach() - if is_param: - value_to_set = nn.Parameter( - value_to_set, requires_grad=False - ) - elif is_buffer: - value_to_set = Buffer( - value_to_set, requires_grad=False - ) - else: - value_to_set = getattr(self, value_to_set) - # params.set(key, value_to_set) - params._set_tuple( - key, value_to_set, inplace=False, validated=True - ) - return params - else: - params = getattr(self, param_name) - return params.apply(_make_target_param(clone=False)) - - else: - raise RuntimeError( - f"{self.__class__.__name__} does not have the target param {name}" - ) - - @_cache_values - def _target_param_getter(self, network_name): - target_name = "_target_" + network_name + "_params" - param_name = network_name + "_params" - if target_name in self.__dict__: - target_params = getattr(self, target_name) - if target_params is not None: - if not self._has_update_associated and RL_WARNINGS: - warnings.warn( - "No target network updater has been associated " - "with this loss module, but target parameters have been found. " - "While this is supported, it is expected that the target network " - "updates will be manually performed. You can deactivate this warning " - "by turning the RL_WARNINGS env variable to False.", - category=UserWarning, - ) - with target_params.unlock_(): - # get targets and update - for key in target_params.keys(True, True): - if not isinstance(key, tuple): - key = (key,) - value_to_set = getattr( - self, self.SEP.join(["_target_" + network_name, *key]) - ) - # target_params.set(key, value_to_set) - target_params._set_tuple( - key, value_to_set, inplace=False, validated=True - ) - else: - params = getattr(self, param_name) - # should we clone here? - target_params = params.apply(_make_target_param(clone=False)) - - return target_params - - else: - raise RuntimeError( - f"{self.__class__.__name__} does not have the target param {target_name}" + # if create_target_params: + # we create a TensorDictParams to keep the target params as Buffer instances + target_params = TensorDictParams( + params_and_buffers.apply( + _make_target_param(clone=create_target_params) + ), + no_convert=True, ) + setattr(self, name_params_target + "_params", target_params) + self._has_update_associated[module_name] = not create_target_params + + def __getattr__(self, item): + if item.startswith("target_") and item.endswith("_params"): + params = self._modules.get(item, None) + if params is None: + # no target param, take detached data + params = getattr(self, item[7:]) + params = params.data + elif not self._has_update_associated[item[7:-7]] and RL_WARNINGS: + # no updater associated + warnings.warn( + self.TARGET_NET_WARNING, + category=UserWarning, + ) + return params + return super().__getattr__(item) def _apply(self, fn): # any call to apply erases the cache: the reason is that detached @@ -492,12 +363,6 @@ def _networks(self) -> Iterator[nn.Module]: if isinstance(item, nn.Module): yield item - def register_buffer( - self, name: str, tensor: Optional[Tensor], persistent: bool = True - ) -> None: - # tensor = tensor.to(self.device) - return super().register_buffer(name, tensor, persistent) - def parameters(self, recurse: bool = True) -> Iterator[Parameter]: for _, param in self.named_parameters(recurse=recurse): yield param @@ -513,34 +378,6 @@ def reset(self) -> None: # mainly used for PPO with KL target pass - def to(self, *args, **kwargs): - # get the names of the parameters to map - out = super().to(*args, **kwargs) - for origin, target in self._param_maps.items(): - origin_value = getattr(self, origin) - target_value = getattr(self, target) - setattr(self, target, origin_value.expand_as(target_value)) - out._cache = {} - return out - - def cuda(self, device: Optional[DEVICE_TYPING] = None) -> LossModule: - if device is None: - return self.to("cuda") - else: - return self.to(device) - - def double(self) -> LossModule: - return self.to(torch.double) - - def float(self) -> LossModule: - return self.to(torch.float) - - def half(self) -> LossModule: - return self.to(torch.half) - - def cpu(self) -> LossModule: - return self.to(torch.device("cpu")) - @property def value_estimator(self) -> ValueEstimatorBase: """The value function blends in the reward and value estimate(s) from upcoming state(s)/state-action pair(s) into a target value estimate for the value network.""" @@ -617,6 +454,86 @@ def make_value_estimator(self, value_type: ValueEstimators = None, **hyperparams else: raise NotImplementedError(f"Unknown value type {value_type}") + # def _apply(self, fn, recurse=True): + # """Modifies torch.nn.Module._apply to work with Buffer class.""" + # if recurse: + # for module in self.children(): + # module._apply(fn) + # + # def compute_should_use_set_data(tensor, tensor_applied): + # if torch._has_compatible_shallow_copy_type(tensor, tensor_applied): + # # If the new tensor has compatible tensor type as the existing tensor, + # # the current behavior is to change the tensor in-place using `.data =`, + # # and the future behavior is to overwrite the existing tensor. However, + # # changing the current behavior is a BC-breaking change, and we want it + # # to happen in future releases. So for now we introduce the + # # `torch.__future__.get_overwrite_module_params_on_conversion()` + # # global flag to let the user control whether they want the future + # # behavior of overwriting the existing tensor or not. + # return not torch.__future__.get_overwrite_module_params_on_conversion() + # else: + # return False + # + # for key, param in self._parameters.items(): + # if param is None: + # continue + # # Tensors stored in modules are graph leaves, and we don't want to + # # track autograd history of `param_applied`, so we have to use + # # `with torch.no_grad():` + # with torch.no_grad(): + # param_applied = fn(param) + # should_use_set_data = compute_should_use_set_data(param, param_applied) + # if should_use_set_data: + # param.data = param_applied + # out_param = param + # else: + # assert isinstance(param, Parameter) + # assert param.is_leaf + # out_param = Parameter(param_applied, param.requires_grad) + # self._parameters[key] = out_param + # + # if param.grad is not None: + # with torch.no_grad(): + # grad_applied = fn(param.grad) + # should_use_set_data = compute_should_use_set_data(param.grad, grad_applied) + # if should_use_set_data: + # assert out_param.grad is not None + # out_param.grad.data = grad_applied + # else: + # assert param.grad.is_leaf + # out_param.grad = grad_applied.requires_grad_(param.grad.requires_grad) + # + # for key, buffer in self._buffers.items(): + # if buffer is None: + # continue + # # Tensors stored in modules are graph leaves, and we don't want to + # # track autograd history of `buffer_applied`, so we have to use + # # `with torch.no_grad():` + # with torch.no_grad(): + # buffer_applied = fn(buffer) + # should_use_set_data = compute_should_use_set_data(buffer, buffer_applied) + # if should_use_set_data: + # buffer.data = buffer_applied + # out_buffer = buffer + # else: + # assert isinstance(buffer, Buffer) + # assert buffer.is_leaf + # out_buffer = Buffer(buffer_applied, buffer.requires_grad) + # self._buffers[key] = out_buffer + # + # if buffer.grad is not None: + # with torch.no_grad(): + # grad_applied = fn(buffer.grad) + # should_use_set_data = compute_should_use_set_data(buffer.grad, grad_applied) + # if should_use_set_data: + # assert out_buffer.grad is not None + # out_buffer.grad.data = grad_applied + # else: + # assert buffer.grad.is_leaf + # out_buffer.grad = grad_applied.requires_grad_(buffer.grad.requires_grad) + + return self + class _make_target_param: def __init__(self, clone): @@ -627,4 +544,4 @@ def __call__(self, x): return nn.Parameter( x.data.clone() if self.clone else x.data, requires_grad=False ) - return Buffer(x.data.clone() if self.clone else x.data) + return x.data.clone() if self.clone else x.data diff --git a/torchrl/objectives/utils.py b/torchrl/objectives/utils.py index 662486e900b..bc678ed0154 100644 --- a/torchrl/objectives/utils.py +++ b/torchrl/objectives/utils.py @@ -141,33 +141,20 @@ def __init__( self, loss_module: "LossModule", # noqa: F821 ): + from torchrl.objectives.common import LossModule + + if not isinstance(loss_module, LossModule): + raise ValueError("The loss_module must be a LossModule instance.") _has_update_associated = getattr(loss_module, "_has_update_associated", None) - loss_module._has_update_associated = True + for k in loss_module._has_update_associated.keys(): + loss_module._has_update_associated[k] = True try: _target_names = [] - # for properties - for name in loss_module.__class__.__dict__: - if ( - name.startswith("target_") - and (name.endswith("params") or name.endswith("buffers")) - and (getattr(loss_module, name) is not None) - ): + for name, _ in loss_module.named_children(): + # the TensorDictParams is a nn.Module instance + if name.startswith("target_") and name.endswith("_params"): _target_names.append(name) - # for regular lists: raise an exception - for name in loss_module.__dict__: - if ( - name.startswith("target_") - and (name.endswith("params") or name.endswith("buffers")) - and (getattr(loss_module, name) is not None) - ): - raise RuntimeError( - "Your module seems to have a target tensor list contained " - "in a non-dynamic structure (such as a list). If the " - "module is cast onto a device, the reference to these " - "tensors will be lost." - ) - if len(_target_names) == 0: raise RuntimeError( "Did not find any target parameters or buffers in the loss module." @@ -191,7 +178,8 @@ def __init__( self.init_() _has_update_associated = True finally: - loss_module._has_update_associated = _has_update_associated + for k in loss_module._has_update_associated.keys(): + loss_module._has_update_associated[k] = _has_update_associated @property def _targets(self): From 93bc5dea822fdcf3d0f32c8e29669904b7b7f334 Mon Sep 17 00:00:00 2001 From: btx0424 Date: Fri, 18 Aug 2023 13:48:04 +0800 Subject: [PATCH 038/148] [BugFix] CompositeSpec.unsqueeze (#1464) --- torchrl/data/tensor_specs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/torchrl/data/tensor_specs.py b/torchrl/data/tensor_specs.py index b11a2e2ebef..61864113a26 100644 --- a/torchrl/data/tensor_specs.py +++ b/torchrl/data/tensor_specs.py @@ -3117,7 +3117,7 @@ def squeeze(self, dim: int | None = None): def unsqueeze(self, dim: int): if dim < 0: - dim += len(self.shape) + dim += len(self.shape) + 1 shape = _unsqueezed_shape(self.shape, dim) From e4c73155d165d98cee45305bfe8b4e92977be455 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Wed, 30 Aug 2023 07:56:52 +0100 Subject: [PATCH 039/148] [BugFix] Discrete SAC rewrite (#1461) Signed-off-by: Matteo Bettini --- .../linux_examples/scripts/run_test.sh | 6 + examples/discrete_sac/discrete_sac.py | 8 +- examples/multiagent/sac.py | 321 ++++++++++++ examples/multiagent/sac.yaml | 40 ++ test/test_cost.py | 12 +- torchrl/data/utils.py | 104 +++- torchrl/modules/tensordict_module/actors.py | 55 +-- torchrl/modules/utils/utils.py | 51 -- torchrl/objectives/dqn.py | 4 +- torchrl/objectives/multiagent/qmixer.py | 4 +- torchrl/objectives/sac.py | 465 +++++++++--------- 11 files changed, 717 insertions(+), 353 deletions(-) create mode 100644 examples/multiagent/sac.py create mode 100644 examples/multiagent/sac.yaml diff --git a/.circleci/unittest/linux_examples/scripts/run_test.sh b/.circleci/unittest/linux_examples/scripts/run_test.sh index 201971f4161..5d46ad5dda3 100755 --- a/.circleci/unittest/linux_examples/scripts/run_test.sh +++ b/.circleci/unittest/linux_examples/scripts/run_test.sh @@ -270,6 +270,12 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/multiagent/q train.num_epochs=3 \ train.minibatch_size=100 \ logger.backend= +python .circleci/unittest/helpers/coverage_run_parallel.py examples/multiagent/sac.py \ + collector.n_iters=2 \ + collector.frames_per_batch=200 \ + train.num_epochs=3 \ + train.minibatch_size=100 \ + logger.backend= python .circleci/unittest/helpers/coverage_run_parallel.py examples/bandits/dqn.py --n_steps=100 diff --git a/examples/discrete_sac/discrete_sac.py b/examples/discrete_sac/discrete_sac.py index c5c03cf7042..12ac76f20e7 100644 --- a/examples/discrete_sac/discrete_sac.py +++ b/examples/discrete_sac/discrete_sac.py @@ -9,7 +9,7 @@ import torch import torch.cuda import tqdm -from tensordict.nn import InteractionType +from tensordict.nn import InteractionType, TensorDictModule from torch import nn, optim from torchrl.collectors import SyncDataCollector @@ -27,7 +27,7 @@ from torchrl.modules import MLP, SafeModule from torchrl.modules.distributions import OneHotCategorical -from torchrl.modules.tensordict_module.actors import ProbabilisticActor, ValueOperator +from torchrl.modules.tensordict_module.actors import ProbabilisticActor from torchrl.objectives import DiscreteSACLoss, SoftUpdate from torchrl.record.loggers import generate_exp_name, get_logger @@ -150,8 +150,9 @@ def env_factory(num_workers): **qvalue_net_kwargs, ) - qvalue = ValueOperator( + qvalue = TensorDictModule( in_keys=in_keys, + out_keys=["action_value"], module=qvalue_net, ).to(device) @@ -171,6 +172,7 @@ def env_factory(num_workers): # Create SAC loss loss_module = DiscreteSACLoss( actor_network=model[0], + action_space=test_env.action_spec, qvalue_network=model[1], num_actions=num_actions, num_qvalue_nets=2, diff --git a/examples/multiagent/sac.py b/examples/multiagent/sac.py new file mode 100644 index 00000000000..ae25038eefd --- /dev/null +++ b/examples/multiagent/sac.py @@ -0,0 +1,321 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +import time + +import hydra +import torch + +from tensordict.nn import TensorDictModule +from tensordict.nn.distributions import NormalParamExtractor +from torch import nn +from torch.distributions import Categorical +from torchrl.collectors import SyncDataCollector +from torchrl.data import TensorDictReplayBuffer +from torchrl.data.replay_buffers.samplers import SamplerWithoutReplacement +from torchrl.data.replay_buffers.storages import LazyTensorStorage +from torchrl.envs import RewardSum, TransformedEnv +from torchrl.envs.libs.vmas import VmasEnv +from torchrl.envs.utils import ExplorationType, set_exploration_type + +from torchrl.modules import ProbabilisticActor, TanhNormal, ValueOperator +from torchrl.modules.models.multiagent import MultiAgentMLP +from torchrl.objectives import DiscreteSACLoss, SACLoss, SoftUpdate, ValueEstimators +from utils.logging import init_logging, log_evaluation, log_training + + +def rendering_callback(env, td): + env.frames.append(env.render(mode="rgb_array", agent_index_focus=None)) + + +@hydra.main(version_base="1.1", config_path=".", config_name="sac") +def train(cfg: "DictConfig"): # noqa: F821 + # Device + cfg.train.device = "cpu" if not torch.has_cuda else "cuda:0" + cfg.env.device = cfg.train.device + + # Seeding + torch.manual_seed(cfg.seed) + + # Sampling + cfg.env.vmas_envs = cfg.collector.frames_per_batch // cfg.env.max_steps + cfg.collector.total_frames = cfg.collector.frames_per_batch * cfg.collector.n_iters + cfg.buffer.memory_size = cfg.collector.frames_per_batch + + # Create env and env_test + env = VmasEnv( + scenario=cfg.env.scenario_name, + num_envs=cfg.env.vmas_envs, + continuous_actions=cfg.env.continuous_actions, + max_steps=cfg.env.max_steps, + device=cfg.env.device, + seed=cfg.seed, + # Scenario kwargs + **cfg.env.scenario, + ) + env = TransformedEnv( + env, + RewardSum(in_keys=[env.reward_key], out_keys=[("agents", "episode_reward")]), + ) + + env_test = VmasEnv( + scenario=cfg.env.scenario_name, + num_envs=cfg.eval.evaluation_episodes, + continuous_actions=cfg.env.continuous_actions, + max_steps=cfg.env.max_steps, + device=cfg.env.device, + seed=cfg.seed, + # Scenario kwargs + **cfg.env.scenario, + ) + + # Policy + if cfg.env.continuous_actions: + actor_net = nn.Sequential( + MultiAgentMLP( + n_agent_inputs=env.observation_spec["agents", "observation"].shape[-1], + n_agent_outputs=2 * env.action_spec.shape[-1], + n_agents=env.n_agents, + centralised=False, + share_params=cfg.model.shared_parameters, + device=cfg.train.device, + depth=2, + num_cells=256, + activation_class=nn.Tanh, + ), + NormalParamExtractor(), + ) + policy_module = TensorDictModule( + actor_net, + in_keys=[("agents", "observation")], + out_keys=[("agents", "loc"), ("agents", "scale")], + ) + + policy = ProbabilisticActor( + module=policy_module, + spec=env.unbatched_action_spec, + in_keys=[("agents", "loc"), ("agents", "scale")], + out_keys=[env.action_key], + distribution_class=TanhNormal, + distribution_kwargs={ + "min": env.unbatched_action_spec[("agents", "action")].space.minimum, + "max": env.unbatched_action_spec[("agents", "action")].space.maximum, + }, + return_log_prob=True, + ) + + # Critic + module = MultiAgentMLP( + n_agent_inputs=env.observation_spec["agents", "observation"].shape[-1] + + env.action_spec.shape[-1], # Q critic takes action and value + n_agent_outputs=1, + n_agents=env.n_agents, + centralised=cfg.model.centralised_critic, + share_params=cfg.model.shared_parameters, + device=cfg.train.device, + depth=2, + num_cells=256, + activation_class=nn.Tanh, + ) + value_module = ValueOperator( + module=module, + in_keys=[("agents", "observation"), env.action_key], + out_keys=[("agents", "state_action_value")], + ) + else: + actor_net = nn.Sequential( + MultiAgentMLP( + n_agent_inputs=env.observation_spec["agents", "observation"].shape[-1], + n_agent_outputs=env.action_spec.space.n, + n_agents=env.n_agents, + centralised=False, + share_params=cfg.model.shared_parameters, + device=cfg.train.device, + depth=2, + num_cells=256, + activation_class=nn.Tanh, + ), + ) + policy_module = TensorDictModule( + actor_net, + in_keys=[("agents", "observation")], + out_keys=[("agents", "logits")], + ) + policy = ProbabilisticActor( + module=policy_module, + spec=env.unbatched_action_spec, + in_keys=[("agents", "logits")], + out_keys=[env.action_key], + distribution_class=Categorical, + return_log_prob=True, + ) + + # Critic + module = MultiAgentMLP( + n_agent_inputs=env.observation_spec["agents", "observation"].shape[-1], + n_agent_outputs=env.action_spec.space.n, + n_agents=env.n_agents, + centralised=cfg.model.centralised_critic, + share_params=cfg.model.shared_parameters, + device=cfg.train.device, + depth=2, + num_cells=256, + activation_class=nn.Tanh, + ) + value_module = ValueOperator( + module=module, + in_keys=[("agents", "observation")], + out_keys=[("agents", "action_value")], + ) + + collector = SyncDataCollector( + env, + policy, + device=cfg.env.device, + storing_device=cfg.train.device, + frames_per_batch=cfg.collector.frames_per_batch, + total_frames=cfg.collector.total_frames, + ) + + replay_buffer = TensorDictReplayBuffer( + storage=LazyTensorStorage(cfg.buffer.memory_size, device=cfg.train.device), + sampler=SamplerWithoutReplacement(), + batch_size=cfg.train.minibatch_size, + ) + + if cfg.env.continuous_actions: + loss_module = SACLoss( + actor_network=policy, qvalue_network=value_module, delay_qvalue=True + ) + loss_module.set_keys( + state_action_value=("agents", "state_action_value"), + action=env.action_key, + reward=env.reward_key, + ) + else: + loss_module = DiscreteSACLoss( + actor_network=policy, + qvalue_network=value_module, + delay_qvalue=True, + num_actions=env.action_spec.space.n, + action_space=env.unbatched_action_spec, + ) + loss_module.set_keys( + action_value=("agents", "action_value"), + action=env.action_key, + reward=env.reward_key, + ) + + loss_module.make_value_estimator(ValueEstimators.TD0, gamma=cfg.loss.gamma) + target_net_updater = SoftUpdate(loss_module, eps=1 - cfg.loss.tau) + + optim = torch.optim.Adam(loss_module.parameters(), cfg.train.lr) + + # Logging + if cfg.logger.backend: + model_name = ( + ("Het" if not cfg.model.shared_parameters else "") + + ("MA" if cfg.model.centralised_critic else "I") + + "SAC" + ) + logger = init_logging(cfg, model_name) + + total_time = 0 + total_frames = 0 + sampling_start = time.time() + for i, tensordict_data in enumerate(collector): + print(f"\nIteration {i}") + + sampling_time = time.time() - sampling_start + + tensordict_data.set( + ("next", "done"), + tensordict_data.get(("next", "done")) + .unsqueeze(-1) + .expand(tensordict_data.get(("next", env.reward_key)).shape), + ) # We need to expand the done to match the reward shape + + current_frames = tensordict_data.numel() + total_frames += current_frames + data_view = tensordict_data.reshape(-1) + replay_buffer.extend(data_view) + + training_tds = [] + training_start = time.time() + for _ in range(cfg.train.num_epochs): + for _ in range(cfg.collector.frames_per_batch // cfg.train.minibatch_size): + subdata = replay_buffer.sample() + loss_vals = loss_module(subdata) + training_tds.append(loss_vals.detach()) + + loss_value = ( + loss_vals["loss_actor"] + + loss_vals["loss_alpha"] + + loss_vals["loss_qvalue"] + + loss_vals["loss_alpha"] + ) + + loss_value.backward() + + total_norm = torch.nn.utils.clip_grad_norm_( + loss_module.parameters(), cfg.train.max_grad_norm + ) + training_tds[-1].set("grad_norm", total_norm.mean()) + + optim.step() + optim.zero_grad() + target_net_updater.step() + + collector.update_policy_weights_() + + training_time = time.time() - training_start + + iteration_time = sampling_time + training_time + total_time += iteration_time + training_tds = torch.stack(training_tds) + + # More logs + if cfg.logger.backend: + log_training( + logger, + training_tds, + tensordict_data, + sampling_time, + training_time, + total_time, + i, + current_frames, + total_frames, + step=i, + ) + + if ( + cfg.eval.evaluation_episodes > 0 + and i % cfg.eval.evaluation_interval == 0 + and cfg.logger.backend + ): + evaluation_start = time.time() + with torch.no_grad() and set_exploration_type(ExplorationType.MODE): + env_test.frames = [] + rollouts = env_test.rollout( + max_steps=cfg.env.max_steps, + policy=policy, + callback=rendering_callback, + auto_cast_to_device=True, + break_when_any_done=False, + # We are running vectorized evaluation we do not want it to stop when just one env is done + ) + + evaluation_time = time.time() - evaluation_start + + log_evaluation(logger, rollouts, env_test, evaluation_time, step=i) + + if cfg.logger.backend == "wandb": + logger.experiment.log({}, commit=True) + sampling_start = time.time() + + +if __name__ == "__main__": + train() diff --git a/examples/multiagent/sac.yaml b/examples/multiagent/sac.yaml new file mode 100644 index 00000000000..98f55045464 --- /dev/null +++ b/examples/multiagent/sac.yaml @@ -0,0 +1,40 @@ +seed: 0 + +env: + continuous_actions: True # False for discrete sac + max_steps: 100 + scenario_name: "balance" + scenario: + n_agents: 3 + device: ??? # These values will be populated dynamically + vmas_envs: ??? + +model: + shared_parameters: True + centralised_critic: True + +collector: + frames_per_batch: 60_000 # Frames sampled each sampling iteration + n_iters: 500 # Number of sampling/training iterations + total_frames: ??? + +buffer: + memory_size: ??? + +loss: + gamma: 0.9 + tau: 0.005 # For target net + +train: + num_epochs: 45 # optimization steps per batch of data collected + minibatch_size: 4096 # size of minibatches used in each epoch + lr: 5e-5 + max_grad_norm: 2.0 + device: ??? + +eval: + evaluation_interval: 20 + evaluation_episodes: 200 + +logger: + backend: wandb # Delete to remove logging diff --git a/test/test_cost.py b/test/test_cost.py index 38faaaf1048..aa1ae5d245d 100644 --- a/test/test_cost.py +++ b/test/test_cost.py @@ -3058,7 +3058,9 @@ def forward(self, obs): return self.linear(obs) module = ValueClass() - qvalue = ValueOperator(module=module, in_keys=[observation_key]) + qvalue = ValueOperator( + module=module, in_keys=[observation_key], out_keys=["action_value"] + ) return qvalue.to(device) def _create_mock_distributional_actor( @@ -3473,14 +3475,6 @@ def test_discrete_sac_notensordict( torch.testing.assert_close(loss_val_td.get("loss_alpha"), loss_val[2]) torch.testing.assert_close(loss_val_td.get("alpha"), loss_val[3]) torch.testing.assert_close(loss_val_td.get("entropy"), loss_val[4]) - torch.testing.assert_close( - loss_val_td.get("state_action_value_actor"), loss_val[5] - ) - torch.testing.assert_close( - loss_val_td.get("action_log_prob_actor"), loss_val[6] - ) - torch.testing.assert_close(loss_val_td.get("next.state_value"), loss_val[7]) - torch.testing.assert_close(loss_val_td.get("target_value"), loss_val[8]) # test select torch.manual_seed(self.seed) loss.select_out_keys("loss_actor", "loss_alpha") diff --git a/torchrl/data/utils.py b/torchrl/data/utils.py index 67756660856..dad28c710bb 100644 --- a/torchrl/data/utils.py +++ b/torchrl/data/utils.py @@ -12,9 +12,14 @@ from torch import Tensor from torchrl.data.tensor_specs import ( + BinaryDiscreteTensorSpec, CompositeSpec, + DiscreteTensorSpec, LazyStackedCompositeSpec, LazyStackedTensorSpec, + MultiDiscreteTensorSpec, + MultiOneHotDiscreteTensorSpec, + OneHotDiscreteTensorSpec, TensorSpec, ) @@ -43,6 +48,27 @@ INDEX_TYPING = Union[None, int, slice, str, Tensor, List[Any], Tuple[Any, ...]] +ACTION_SPACE_MAP = { + OneHotDiscreteTensorSpec: "one_hot", + MultiOneHotDiscreteTensorSpec: "mult_one_hot", + BinaryDiscreteTensorSpec: "binary", + DiscreteTensorSpec: "categorical", + "one_hot": "one_hot", + "one-hot": "one_hot", + "mult_one_hot": "mult_one_hot", + "mult-one-hot": "mult_one_hot", + "multi_one_hot": "mult_one_hot", + "multi-one-hot": "mult_one_hot", + "binary": "binary", + "categorical": "categorical", + MultiDiscreteTensorSpec: "multi_categorical", + "multi_categorical": "multi_categorical", + "multi-categorical": "multi_categorical", + "multi_discrete": "multi_categorical", + "multi-discrete": "multi_categorical", +} + + def consolidate_spec( spec: CompositeSpec, recurse_through_entries: bool = True, @@ -129,7 +155,7 @@ def _empty_like_spec(specs: List[TensorSpec], shape): shape = list(shape[: spec.stack_dim]) + list(shape[spec.stack_dim + 1 :]) return LazyStackedTensorSpec( *[_empty_like_spec(spec._specs, shape) for _ in spec._specs], - dim=spec.stack_dim + dim=spec.stack_dim, ) else: # the exclusive key has values which are TensorSpecs -> @@ -206,3 +232,79 @@ def __call__(self, *args, **kwargs) -> Any: kwargs = {k: item for k, item in kwargs.items()} kwargs.update(self.kwargs) return self.fn(**kwargs) + + +def _process_action_space_spec(action_space, spec): + original_spec = spec + composite_spec = False + if isinstance(spec, CompositeSpec): + # this will break whenever our action is more complex than a single tensor + try: + if "action" in spec.keys(): + _key = "action" + else: + # the first key is the action + for _key in spec.keys(True, True): + if isinstance(_key, tuple) and _key[-1] == "action": + break + else: + raise KeyError + spec = spec[_key] + composite_spec = True + except KeyError: + raise KeyError( + "action could not be found in the spec. Make sure " + "you pass a spec that is either a native action spec or a composite action spec " + "with a leaf 'action' entry. Otherwise, simply remove the spec and use the action_space only." + ) + if action_space is not None: + if isinstance(action_space, CompositeSpec): + raise ValueError("action_space cannot be of type CompositeSpec.") + if ( + spec is not None + and isinstance(action_space, TensorSpec) + and action_space is not spec + ): + raise ValueError( + "Passing an action_space as a TensorSpec and a spec isn't allowed, unless they match." + ) + if isinstance(action_space, TensorSpec): + spec = action_space + action_space = _find_action_space(action_space) + # check that the spec and action_space match + if spec is not None and _find_action_space(spec) != action_space: + raise ValueError( + f"The action spec and the action space do not match: got action_space={action_space} and spec={spec}." + ) + elif spec is not None: + action_space = _find_action_space(spec) + else: + raise ValueError( + "Neither action_space nor spec was defined. The action space cannot be inferred." + ) + if composite_spec: + spec = original_spec + return action_space, spec + + +def _find_action_space(action_space): + if isinstance(action_space, TensorSpec): + if isinstance(action_space, CompositeSpec): + if "action" in action_space.keys(): + _key = "action" + else: + # the first key is the action + for _key in action_space.keys(True, True): + if isinstance(_key, tuple) and _key[-1] == "action": + break + else: + raise KeyError + action_space = action_space[_key] + action_space = type(action_space) + try: + action_space = ACTION_SPACE_MAP[action_space] + except KeyError: + raise ValueError( + f"action_space was not specified/not compatible and could not be retrieved from the value network. Got action_space={action_space}." + ) + return action_space diff --git a/torchrl/modules/tensordict_module/actors.py b/torchrl/modules/tensordict_module/actors.py index 1cd6745826a..4ae4c9a9de1 100644 --- a/torchrl/modules/tensordict_module/actors.py +++ b/torchrl/modules/tensordict_module/actors.py @@ -20,6 +20,7 @@ from torch.distributions import Categorical from torchrl.data.tensor_specs import CompositeSpec, TensorSpec +from torchrl.data.utils import _process_action_space_spec from torchrl.modules.models.models import DistributionalDQNnet from torchrl.modules.tensordict_module.common import SafeModule from torchrl.modules.tensordict_module.probabilistic import ( @@ -27,7 +28,6 @@ SafeProbabilisticTensorDictSequential, ) from torchrl.modules.tensordict_module.sequence import SafeSequential -from torchrl.modules.utils.utils import _find_action_space class Actor(SafeModule): @@ -682,59 +682,6 @@ def _binary(self, value: torch.Tensor) -> torch.Tensor: ) -def _process_action_space_spec(action_space, spec): - original_spec = spec - composite_spec = False - if isinstance(spec, CompositeSpec): - # this will break whenever our action is more complex than a single tensor - try: - if "action" in spec.keys(): - _key = "action" - else: - # the first key is the action - for _key in spec.keys(True, True): - if isinstance(_key, tuple) and _key[-1] == "action": - break - else: - raise KeyError - spec = spec[_key] - composite_spec = True - except KeyError: - raise KeyError( - "action could not be found in the spec. Make sure " - "you pass a spec that is either a native action spec or a composite action spec " - "with a leaf 'action' entry. Otherwise, simply remove the spec and use the action_space only." - ) - if action_space is not None: - if isinstance(action_space, CompositeSpec): - raise ValueError("action_space cannot be of type CompositeSpec.") - if ( - spec is not None - and isinstance(action_space, TensorSpec) - and action_space is not spec - ): - raise ValueError( - "Passing an action_space as a TensorSpec and a spec isn't allowed, unless they match." - ) - if isinstance(action_space, TensorSpec): - spec = action_space - action_space = _find_action_space(action_space) - # check that the spec and action_space match - if spec is not None and _find_action_space(spec) != action_space: - raise ValueError( - f"The action spec and the action space do not match: got action_space={action_space} and spec={spec}." - ) - elif spec is not None: - action_space = _find_action_space(spec) - else: - raise ValueError( - "Neither action_space nor spec was defined. The action space cannot be inferred." - ) - if composite_spec: - spec = original_spec - return action_space, spec - - class QValueHook: """Q-Value hook for Q-value policies. diff --git a/torchrl/modules/utils/utils.py b/torchrl/modules/utils/utils.py index 95427fce078..e69de29bb2d 100644 --- a/torchrl/modules/utils/utils.py +++ b/torchrl/modules/utils/utils.py @@ -1,51 +0,0 @@ -from torchrl.data.tensor_specs import ( - BinaryDiscreteTensorSpec, - CompositeSpec, - DiscreteTensorSpec, - MultiOneHotDiscreteTensorSpec, - OneHotDiscreteTensorSpec, - TensorSpec, -) - -ACTION_SPACE_MAP = {} -ACTION_SPACE_MAP[OneHotDiscreteTensorSpec] = "one_hot" -ACTION_SPACE_MAP[MultiOneHotDiscreteTensorSpec] = "mult_one_hot" -ACTION_SPACE_MAP[BinaryDiscreteTensorSpec] = "binary" -ACTION_SPACE_MAP[DiscreteTensorSpec] = "categorical" -ACTION_SPACE_MAP["one_hot"] = "one_hot" -ACTION_SPACE_MAP["one-hot"] = "one_hot" -ACTION_SPACE_MAP["mult_one_hot"] = "mult_one_hot" -ACTION_SPACE_MAP["mult-one-hot"] = "mult_one_hot" -ACTION_SPACE_MAP["multi_one_hot"] = "mult_one_hot" -ACTION_SPACE_MAP["multi-one-hot"] = "mult_one_hot" -ACTION_SPACE_MAP["binary"] = "binary" -ACTION_SPACE_MAP["categorical"] = "categorical" -# TODO for the future ;) -# ACTION_SPACE_MAP[MultiDiscreteTensorSpec] = "multi_categorical" -# ACTION_SPACE_MAP["multi_categorical"] = "multi_categorical" -# ACTION_SPACE_MAP["multi-categorical"] = "multi_categorical" -# ACTION_SPACE_MAP["multi_discrete"] = "multi_categorical" -# ACTION_SPACE_MAP["multi-discrete"] = "multi_categorical" - - -def _find_action_space(action_space): - if isinstance(action_space, TensorSpec): - if isinstance(action_space, CompositeSpec): - if "action" in action_space.keys(): - _key = "action" - else: - # the first key is the action - for _key in action_space.keys(True, True): - if isinstance(_key, tuple) and _key[-1] == "action": - break - else: - raise KeyError - action_space = action_space[_key] - action_space = type(action_space) - try: - action_space = ACTION_SPACE_MAP[action_space] - except KeyError: - raise ValueError( - f"action_space was not specified/not compatible and could not be retrieved from the value network. Got action_space={action_space}." - ) - return action_space diff --git a/torchrl/objectives/dqn.py b/torchrl/objectives/dqn.py index c37328e9326..527af5bf481 100644 --- a/torchrl/objectives/dqn.py +++ b/torchrl/objectives/dqn.py @@ -13,6 +13,8 @@ from torch import nn from torchrl.data.tensor_specs import TensorSpec +from torchrl.data.utils import _find_action_space + from torchrl.envs.utils import step_mdp from torchrl.modules.tensordict_module.actors import ( DistributionalQValueActor, @@ -20,8 +22,6 @@ ) from torchrl.modules.tensordict_module.common import ensure_tensordict_compatible -from torchrl.modules.utils.utils import _find_action_space - from torchrl.objectives.common import LossModule from torchrl.objectives.utils import ( _GAMMA_LMBDA_DEPREC_WARNING, diff --git a/torchrl/objectives/multiagent/qmixer.py b/torchrl/objectives/multiagent/qmixer.py index e9eca7ce293..f09fa3c0e03 100644 --- a/torchrl/objectives/multiagent/qmixer.py +++ b/torchrl/objectives/multiagent/qmixer.py @@ -18,12 +18,12 @@ from torchrl.data.tensor_specs import TensorSpec +from torchrl.data.utils import _find_action_space + from torchrl.modules import SafeSequential from torchrl.modules.tensordict_module.actors import QValueActor from torchrl.modules.tensordict_module.common import ensure_tensordict_compatible -from torchrl.modules.utils.utils import _find_action_space - from torchrl.objectives.common import LossModule from torchrl.objectives.utils import ( diff --git a/torchrl/objectives/sac.py b/torchrl/objectives/sac.py index aeb9adbafea..a1ebf0e5873 100644 --- a/torchrl/objectives/sac.py +++ b/torchrl/objectives/sac.py @@ -6,7 +6,7 @@ import warnings from dataclasses import dataclass from numbers import Number -from typing import Optional, Tuple, Union +from typing import Dict, Optional, Tuple, Union import numpy as np import torch @@ -15,8 +15,9 @@ from tensordict.utils import NestedKey from torch import Tensor -from torchrl.data import CompositeSpec -from torchrl.envs.utils import ExplorationType, set_exploration_type, step_mdp +from torchrl.data import CompositeSpec, TensorSpec +from torchrl.data.utils import _find_action_space +from torchrl.envs.utils import ExplorationType, set_exploration_type from torchrl.modules import ProbabilisticActor from torchrl.modules.tensordict_module.actors import ActorCriticWrapper @@ -516,18 +517,15 @@ def forward(self, tensordict: TensorDictBase) -> TensorDictBase: else: tensordict_reshape = tensordict - device = self.device - td_device = tensordict_reshape.to(device) - if self._version == 1: - loss_qvalue, priority = self._loss_qvalue_v1(td_device) - loss_value = self._loss_value(td_device) + loss_qvalue, value_metadata = self._qvalue_v1_loss(tensordict_reshape) + loss_value, _ = self._value_loss(tensordict_reshape) else: - loss_qvalue, priority = self._loss_qvalue_v2(td_device) + loss_qvalue, value_metadata = self._qvalue_v2_loss(tensordict_reshape) loss_value = None - loss_actor = self._loss_actor(td_device) - loss_alpha = self._loss_alpha(td_device) - tensordict_reshape.set(self.tensor_keys.priority, priority) + loss_actor, metadata_actor = self._actor_loss(tensordict_reshape) + loss_alpha = self._alpha_loss(log_prob=metadata_actor["log_prob"]) + tensordict_reshape.set(self.tensor_keys.priority, value_metadata["td_error"]) if (loss_actor.shape != loss_qvalue.shape) or ( loss_value is not None and loss_actor.shape != loss_value.shape ): @@ -536,12 +534,13 @@ def forward(self, tensordict: TensorDictBase) -> TensorDictBase: ) if shape: tensordict.update(tensordict_reshape.view(shape)) + entropy = -metadata_actor["log_prob"].mean() out = { "loss_actor": loss_actor.mean(), "loss_qvalue": loss_qvalue.mean(), "loss_alpha": loss_alpha.mean(), "alpha": self._alpha, - "entropy": -td_device.get(self.tensor_keys.log_prob).mean().detach(), + "entropy": entropy, } if self._version == 1: out["loss_value"] = loss_value.mean() @@ -552,7 +551,9 @@ def forward(self, tensordict: TensorDictBase) -> TensorDictBase: def _cached_detached_qvalue_params(self): return self.qvalue_network_params.detach() - def _loss_actor(self, tensordict: TensorDictBase) -> Tensor: + def _actor_loss( + self, tensordict: TensorDictBase + ) -> Tuple[Tensor, Dict[str, Tensor]]: with set_exploration_type(ExplorationType.RANDOM): dist = self.actor_network.get_dist( tensordict, @@ -575,9 +576,7 @@ def _loss_actor(self, tensordict: TensorDictBase) -> Tensor: f"Losses shape mismatch: {log_prob.shape} and {min_q_logprob.shape}" ) - # write log_prob in tensordict for alpha loss - tensordict.set(self.tensor_keys.log_prob, log_prob.detach()) - return self._alpha * log_prob - min_q_logprob + return self._alpha * log_prob - min_q_logprob, {"log_prob": log_prob.detach()} @property @_cache_values @@ -593,7 +592,9 @@ def _cached_target_params_actor_value(self): _run_checks=False, ) - def _loss_qvalue_v1(self, tensordict: TensorDictBase) -> Tuple[Tensor, Tensor]: + def _qvalue_v1_loss( + self, tensordict: TensorDictBase + ) -> Tuple[Tensor, Dict[str, Tensor]]: target_params = self._cached_target_params_actor_value with set_exploration_type(ExplorationType.MODE): target_value = self.value_estimator.value_estimate( @@ -623,11 +624,13 @@ def _loss_qvalue_v1(self, tensordict: TensorDictBase) -> Tuple[Tensor, Tensor]: loss_value = distance_loss( pred_val, target_chunks, loss_function=self.loss_function ).view(*shape) - priority_value = torch.cat((pred_val - target_chunks).pow(2).unbind(0), 0) + metadata = { + "td_error": torch.cat((pred_val - target_chunks).pow(2).unbind(0), 0) + } - return loss_value, priority_value + return loss_value, metadata - def _get_value_v2(self, tensordict, _alpha, actor_params, qval_params): + def _compute_target_v2(self, tensordict) -> Tensor: r"""Value network for SAC v2. SAC v2 is based on a value estimate of the form: @@ -645,14 +648,16 @@ def _get_value_v2(self, tensordict, _alpha, actor_params, qval_params): with set_exploration_type(ExplorationType.RANDOM): next_tensordict = tensordict.get("next").clone(False) next_dist = self.actor_network.get_dist( - next_tensordict, params=actor_params + next_tensordict, params=self.actor_network_params ) next_action = next_dist.rsample() next_tensordict.set(self.tensor_keys.action, next_action) next_sample_log_prob = next_dist.log_prob(next_action) # get q-values - next_tensordict_expand = self._vmap_qnetworkN0(next_tensordict, qval_params) + next_tensordict_expand = self._vmap_qnetworkN0( + next_tensordict, self.target_qvalue_network_params + ) state_action_value = next_tensordict_expand.get( self.tensor_keys.state_action_value ) @@ -661,7 +666,7 @@ def _get_value_v2(self, tensordict, _alpha, actor_params, qval_params): != next_sample_log_prob.shape ): next_sample_log_prob = next_sample_log_prob.unsqueeze(-1) - next_state_value = state_action_value - _alpha * next_sample_log_prob + next_state_value = state_action_value - self._alpha * next_sample_log_prob next_state_value = next_state_value.min(0)[0] tensordict.set( ("next", self.value_estimator.tensor_keys.value), next_state_value @@ -669,14 +674,11 @@ def _get_value_v2(self, tensordict, _alpha, actor_params, qval_params): target_value = self.value_estimator.value_estimate(tensordict).squeeze(-1) return target_value - def _loss_qvalue_v2(self, tensordict: TensorDictBase) -> Tuple[Tensor, Tensor]: + def _qvalue_v2_loss( + self, tensordict: TensorDictBase + ) -> Tuple[Tensor, Dict[str, Tensor]]: # we pass the alpha value to the tensordict. Since it's a scalar, we must erase the batch-size first. - target_value = self._get_value_v2( - tensordict, - self._alpha, - self.actor_network_params, - self.target_qvalue_network_params, - ) + target_value = self._compute_target_v2(tensordict) tensordict_expand = self._vmap_qnetworkN0( tensordict.select(*self.qvalue_network.in_keys), @@ -691,9 +693,12 @@ def _loss_qvalue_v2(self, tensordict: TensorDictBase) -> Tuple[Tensor, Tensor]: target_value.expand_as(pred_val), loss_function=self.loss_function, ).mean(0) - return loss_qval, td_error.detach().max(0)[0] + metadata = {"td_error": td_error.detach().max(0)[0]} + return loss_qval, metadata - def _loss_value(self, tensordict: TensorDictBase) -> Tensor: + def _value_loss( + self, tensordict: TensorDictBase + ) -> Tuple[Tensor, Dict[str, Tensor]]: # value loss td_copy = tensordict.select(*self.value_network.in_keys).detach() self.value_network( @@ -729,16 +734,16 @@ def _loss_value(self, tensordict: TensorDictBase) -> Tensor: loss_value = distance_loss( pred_val, target_val, loss_function=self.loss_function ) - return loss_value + return loss_value, {} + + def _alpha_loss(self, log_prob: Tensor) -> Tensor: - def _loss_alpha(self, tensordict: TensorDictBase) -> Tensor: - log_pi = tensordict.get(self.tensor_keys.log_prob) if self.target_entropy is not None: # we can compute this loss even if log_alpha is not a parameter - alpha_loss = -self.log_alpha * (log_pi.detach() + self.target_entropy) + alpha_loss = -self.log_alpha * (log_prob + self.target_entropy) else: # placeholder - alpha_loss = torch.zeros_like(log_pi) + alpha_loss = torch.zeros_like(log_prob) return alpha_loss @property @@ -756,9 +761,15 @@ class DiscreteSACLoss(LossModule): Args: actor_network (ProbabilisticActor): the actor to be trained qvalue_network (TensorDictModule): a single Q-value network that will be multiplicated as many times as needed. - num_actions (int): number of actions in the action space. + action_space (str or TensorSpec): Action space. Must be one of + ``"one-hot"``, ``"mult_one_hot"``, ``"binary"`` or ``"categorical"``, + or an instance of the corresponding specs (:class:`torchrl.data.OneHotDiscreteTensorSpec`, + :class:`torchrl.data.MultiOneHotDiscreteTensorSpec`, + :class:`torchrl.data.BinaryDiscreteTensorSpec` or :class:`torchrl.data.DiscreteTensorSpec`). + num_actions (int, optional): number of actions in the action space. + To be provided if target_entropy is ste to "auto". num_qvalue_nets (int, optional): Number of Q-value networks to be trained. Default is 10. - loss_function (str, optional): loss function to be used for the Q-value. Can be one of `"smooth_l1"`, "l2", + loss_function (str, optional): loss function to be used for the Q-value. Can be one of `"smooth_l1"`, "l2", "l1", Default is "smooth_l1". alpha_init (float, optional): initial entropy multiplier. Default is 1.0. @@ -788,52 +799,44 @@ class DiscreteSACLoss(LossModule): >>> from torchrl.modules.tensordict_module.actors import ProbabilisticActor, ValueOperator >>> from torchrl.modules.tensordict_module.common import SafeModule >>> from torchrl.objectives.sac import DiscreteSACLoss - >>> from tensordict.tensordict import TensorDict + >>> from tensordict import TensorDict + >>> from tensordict.nn import TensorDictModule >>> n_act, n_obs = 4, 3 >>> spec = OneHotDiscreteTensorSpec(n_act) - >>> net = NormalParamWrapper(nn.Linear(n_obs, 2 * n_act)) - >>> module = SafeModule(net, in_keys=["observation"], out_keys=["logits"]) + >>> module = TensorDictModule(nn.Linear(n_obs, n_act), in_keys=["observation"], out_keys=["logits"]) >>> actor = ProbabilisticActor( ... module=module, ... in_keys=["logits"], ... out_keys=["action"], ... spec=spec, ... distribution_class=OneHotCategorical) - >>> class ValueClass(nn.Module): - ... def __init__(self): - ... super().__init__() - ... self.linear = nn.Linear(n_obs, n_act) - ... def forward(self, obs): - ... return self.linear(obs) - >>> module = ValueClass() - >>> qvalue = ValueOperator( - ... module=module, - ... in_keys=['observation']) - >>> loss = DiscreteSACLoss(actor, qvalue, num_actions=actor.spec["action"].space.n) - >>> batch = [2, ] + >>> qvalue = TensorDictModule( + ... nn.Linear(n_obs, n_act), + ... in_keys=["observation"], + ... out_keys=["action_value"], + ... ) + >>> loss = DiscreteSACLoss(actor, qvalue, action_space=spec, num_actions=spec.space.n) + >>> batch = [2,] >>> action = spec.rand(batch) >>> data = TensorDict({ - ... "observation": torch.randn(*batch, n_obs), - ... "action": action, - ... ("next", "done"): torch.zeros(*batch, 1, dtype=torch.bool), - ... ("next", "reward"): torch.randn(*batch, 1), - ... ("next", "observation"): torch.randn(*batch, n_obs), + ... "observation": torch.randn(*batch, n_obs), + ... "action": action, + ... ("next", "done"): torch.zeros(*batch, 1, dtype=torch.bool), + ... ("next", "reward"): torch.randn(*batch, 1), + ... ("next", "observation"): torch.randn(*batch, n_obs), ... }, batch) >>> loss(data) TensorDict( - fields={ - action_log_prob_actor: Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, is_shared=False), - alpha: Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, is_shared=False), - entropy: Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, is_shared=False), - loss_actor: Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, is_shared=False), - loss_alpha: Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, is_shared=False), - loss_qvalue: Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, is_shared=False), - next.state_value: Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, is_shared=False), - state_action_value_actor: Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, is_shared=False), - target_value: Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, is_shared=False)}, - batch_size=torch.Size([]), - device=None, - is_shared=False) + fields={ + alpha: Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, is_shared=False), + entropy: Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, is_shared=False), + loss_actor: Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, is_shared=False), + loss_alpha: Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, is_shared=False), + loss_qvalue: Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([]), + device=None, + is_shared=False) + This class is compatible with non-tensordict based modules too and can be used without recurring to any tensordict-related primitive. In this case, @@ -841,8 +844,7 @@ class DiscreteSACLoss(LossModule): ``["action", "next_reward", "next_done"]`` + in_keys of the actor and qvalue network. The return value is a tuple of tensors in the following order: ``["loss_actor", "loss_qvalue", "loss_alpha", - "alpha", "entropy", "state_action_value_actor", - "action_log_prob_actor", "next.state_value", "target_value"]`` + "alpha", "entropy"]`` The output keys can also be filtered using :meth:`DiscreteSACLoss.select_out_keys` method. Examples: @@ -911,9 +913,11 @@ class _AcceptedKeys: action: NestedKey = "action" value: NestedKey = "state_value" + action_value: NestedKey = "action_value" priority: NestedKey = "td_error" reward: NestedKey = "reward" done: NestedKey = "done" + log_prob: NestedKey = "log_prob" default_keys = _AcceptedKeys() default_value_estimator = ValueEstimators.TD0 @@ -924,18 +928,15 @@ class _AcceptedKeys: "loss_alpha", "alpha", "entropy", - "state_action_value_actor", - "action_log_prob_actor", - "next.state_value", - "target_value", ] def __init__( self, actor_network: ProbabilisticActor, qvalue_network: TensorDictModule, - num_actions: int, # replace with spec? *, + action_space: Union[str, TensorSpec] = None, + num_actions: Optional[int] = None, num_qvalue_nets: int = 2, loss_function: str = "smooth_l1", alpha_init: float = 1.0, @@ -958,7 +959,7 @@ def __init__( actor_network, "actor_network", create_target_params=self.delay_actor, - funs_to_decorate=["forward", "get_dist_params"], + funs_to_decorate=["forward", "get_dist"], ) if separate_losses: # we want to make sure there are no duplicates in the params: the @@ -1011,22 +1012,24 @@ def __init__( torch.nn.Parameter(torch.tensor(math.log(alpha_init), device=device)), ) + if action_space is None: + warnings.warn( + "action_space was not specified. DiscreteSACLoss will default to 'one-hot'." + "This behaviour will be deprecated soon and a space will have to be passed." + "Check the DiscreteSACLoss documentation to see how to pass the action space. " + ) + action_space = "one-hot" + self.action_space = _find_action_space(action_space) if target_entropy == "auto": + if num_actions is None: + raise ValueError( + "num_actions needs to be provided if target_entropy == 'auto'" + ) target_entropy = -float(np.log(1.0 / num_actions) * target_entropy_weight) self.register_buffer( "target_entropy", torch.tensor(target_entropy, device=device) ) - - self._vmap_getdist = vmap(self.actor_network.get_dist_params) - self._vmap_qnetwork = vmap(self.qvalue_network) - - @property - def alpha(self): - if self.min_log_alpha is not None: - self.log_alpha.data.clamp_(self.min_log_alpha, self.max_log_alpha) - with torch.no_grad(): - alpha = self.log_alpha.exp() - return alpha + self._vmap_qnetworkN0 = vmap(self.qvalue_network, (None, 0)) def _forward_value_estimator_keys(self, **kwargs) -> None: if self._value_estimator is not None: @@ -1060,172 +1063,172 @@ def in_keys(self, values): @dispatch def forward(self, tensordict: TensorDictBase) -> TensorDictBase: - obs_keys = self.actor_network.in_keys - tensordict_select = tensordict.clone(False).select( - "next", *obs_keys, self.tensor_keys.action - ) + shape = None + if tensordict.ndimension() > 1: + shape = tensordict.shape + tensordict_reshape = tensordict.reshape(-1) + else: + tensordict_reshape = tensordict - actor_params = torch.stack( - [self.actor_network_params, self.target_actor_network_params], 0 + loss_value, metadata_value = self._value_loss(tensordict_reshape) + loss_actor, metadata_actor = self._actor_loss(tensordict_reshape) + loss_alpha = self._alpha_loss( + log_prob=metadata_actor["log_prob"], ) - tensordict_actor_grad = tensordict_select.select( - *obs_keys - ) # to avoid overwriting keys - next_td_actor = step_mdp(tensordict_select).select( - *self.actor_network.in_keys - ) # next_observation -> - tensordict_actor = torch.stack([tensordict_actor_grad, next_td_actor], 0) - tensordict_actor = tensordict_actor.contiguous() - - with set_exploration_type(ExplorationType.RANDOM): - # vmap doesn't support sampling, so we take it out from the vmap - td_params = self._vmap_getdist( - tensordict_actor, - actor_params, + tensordict_reshape.set(self.tensor_keys.priority, metadata_value["td_error"]) + if loss_actor.shape != loss_value.shape: + raise RuntimeError( + f"Losses shape mismatch: {loss_actor.shape}, and {loss_value.shape}" ) - if isinstance(self.actor_network, ProbabilisticActor): - tensordict_actor_dist = self.actor_network.build_dist_from_params( - td_params - ) - else: - tensordict_actor_dist = self.actor_network.build_dist_from_params( - td_params - ) - probs = tensordict_actor_dist.probs - z = (probs == 0.0).float() * 1e-8 - logp_pi = torch.log(probs + z) - logp_pi_pol = torch.sum(probs * logp_pi, dim=-1, keepdim=True) - - # repeat tensordict_actor to match the qvalue size - _actor_loss_td = ( - tensordict_actor[0] - .select(*self.qvalue_network.in_keys) - .expand(self.num_qvalue_nets, *tensordict_actor[0].batch_size) - ) # for actor loss - _qval_td = tensordict_select.select(*self.qvalue_network.in_keys).expand( - self.num_qvalue_nets, - *tensordict_select.select(*self.qvalue_network.in_keys).batch_size, - ) # for qvalue loss - _next_val_td = ( - tensordict_actor[1] - .select(*self.qvalue_network.in_keys) - .expand(self.num_qvalue_nets, *tensordict_actor[1].batch_size) - ) # for next value estimation - tensordict_qval = torch.cat( - [ - _actor_loss_td, - _next_val_td, - _qval_td, - ], - 0, - ) + if shape: + tensordict.update(tensordict_reshape.view(shape)) + entropy = -metadata_actor["log_prob"].mean() + out = { + "loss_actor": loss_actor.mean(), + "loss_qvalue": loss_value.mean(), + "loss_alpha": loss_alpha.mean(), + "alpha": self._alpha, + "entropy": entropy, + } + return TensorDict(out, []) - # cat params - q_params_detach = self.qvalue_network_params.detach() - qvalue_params = torch.cat( - [ - q_params_detach, - self.target_qvalue_network_params, - self.qvalue_network_params, - ], - 0, - ) - tensordict_qval = self._vmap_qnetwork( - tensordict_qval, - qvalue_params, - ) + def _compute_target(self, tensordict) -> Tensor: + r"""Value network for SAC v2. - state_action_value = tensordict_qval.get(self.tensor_keys.value).squeeze(-1) - ( - state_action_value_actor, - next_state_action_value_qvalue, - state_action_value_qvalue, - ) = state_action_value.split( - [self.num_qvalue_nets, self.num_qvalue_nets, self.num_qvalue_nets], - dim=0, - ) + SAC v2 is based on a value estimate of the form: - loss_actor = -( - (state_action_value_actor.min(0)[0] * probs[0]).sum(-1, keepdim=True) - - self.alpha * logp_pi_pol[0] - ).mean() + .. math:: - pred_next_val = ( - probs[1] - * (next_state_action_value_qvalue.min(0)[0] - self.alpha * logp_pi[1]) - ).sum(dim=-1, keepdim=True) + V = Q(s,a) - \alpha * \log p(a | s) - tensordict_select.set( - ("next", self.value_estimator.tensor_keys.value), pred_next_val - ) - target_value = self.value_estimator.value_estimate(tensordict_select).squeeze( - -1 - ) + This class computes this value given the actor and qvalue network + + """ + tensordict = tensordict.clone(False) + # get actions and log-probs + with torch.no_grad(): + next_tensordict = tensordict.get("next").clone(False) - actions = torch.argmax(tensordict_select.get(self.tensor_keys.action), dim=-1) + # get probs and log probs for actions computed from "next" + next_dist = self.actor_network.get_dist( + next_tensordict, params=self.actor_network_params + ) + next_prob = next_dist.probs + next_log_prob = torch.log(torch.where(next_prob == 0, 1e-8, next_prob)) - pred_val_1 = ( - state_action_value_qvalue[0].gather(-1, actions.unsqueeze(-1)).unsqueeze(0) - ) - pred_val_2 = ( - state_action_value_qvalue[1].gather(-1, actions.unsqueeze(-1)).unsqueeze(0) - ) - pred_val = torch.cat([pred_val_1, pred_val_2], dim=0).squeeze() - td_error = (pred_val - target_value.expand_as(pred_val)).pow(2) - loss_qval = ( - distance_loss( - pred_val, - target_value.expand_as(pred_val), - loss_function=self.loss_function, + # get q-values for all actions + next_tensordict_expand = self._vmap_qnetworkN0( + next_tensordict, self.target_qvalue_network_params + ) + next_action_value = next_tensordict_expand.get( + self.tensor_keys.action_value ) - .mean(-1) - .sum() - * 0.5 - ) - tensordict.set(self.tensor_keys.priority, td_error.detach().max(0)[0]) + # like in continuous SAC, we take the minimum of the value ensemble and subtract the entropy term + next_state_value = next_action_value.min(0)[0] - self._alpha * next_log_prob + # unlike in continuous SAC, we can compute the exact expectation over all discrete actions + next_state_value = (next_prob * next_state_value).sum(-1).unsqueeze(-1) - loss_alpha = self._loss_alpha(logp_pi_pol) - if not loss_qval.shape == loss_actor.shape: - raise RuntimeError( - f"QVal and actor loss have different shape: {loss_qval.shape} and {loss_actor.shape}" + tensordict.set( + ("next", self.value_estimator.tensor_keys.value), next_state_value ) - td_out = TensorDict( - { - "loss_actor": loss_actor.mean(), - "loss_qvalue": loss_qval.mean(), - "loss_alpha": loss_alpha.mean(), - "alpha": self.alpha.detach(), - "entropy": -logp_pi.mean().detach(), - "state_action_value_actor": state_action_value_actor.mean().detach(), - "action_log_prob_actor": logp_pi.mean().detach(), - "next.state_value": pred_next_val.mean().detach(), - "target_value": target_value.mean().detach(), - }, - [], + target_value = self.value_estimator.value_estimate(tensordict).squeeze(-1) + return target_value + + def _value_loss( + self, tensordict: TensorDictBase + ) -> Tuple[Tensor, Dict[str, Tensor]]: + target_value = self._compute_target(tensordict) + tensordict_expand = self._vmap_qnetworkN0( + tensordict.select(*self.qvalue_network.in_keys), + self.qvalue_network_params, ) - return td_out + action_value = tensordict_expand.get(self.tensor_keys.action_value) + action = tensordict.get(self.tensor_keys.action) + action = action.expand((action_value.shape[0], *action.shape)) # Add vmap dim + + # TODO this block comes from the dqn loss, we need to swap all these with a proper + # helper function which selects the value given the action for all discrete spaces + if self.action_space == "categorical": + if action.shape != action_value.shape: + # unsqueeze the action if it lacks on trailing singleton dim + action = action.unsqueeze(-1) + chosen_action_value = torch.gather(action_value, -1, index=action).squeeze( + -1 + ) + else: + action = action.to(torch.float) + chosen_action_value = (action_value * action).sum(-1) + + td_error = torch.abs(chosen_action_value - target_value) + loss_qval = distance_loss( + chosen_action_value, + target_value.expand_as(chosen_action_value), + loss_function=self.loss_function, + ).mean(0) + + metadata = { + "td_error": td_error.detach().max(0)[0], + } + return loss_qval, metadata - def _loss_alpha(self, log_pi: Tensor) -> Tensor: - if torch.is_grad_enabled() and not log_pi.requires_grad: + def _actor_loss( + self, tensordict: TensorDictBase + ) -> Tuple[Tensor, Dict[str, Tensor]]: + # get probs and log probs for actions + dist = self.actor_network.get_dist( + tensordict, + params=self.actor_network_params, + ) + prob = dist.probs + log_prob = torch.log(torch.where(prob == 0, 1e-8, prob)) + + td_q = tensordict.select(*self.qvalue_network.in_keys) + td_q = self._vmap_qnetworkN0( + td_q, self._cached_detached_qvalue_params # should we clone? + ) + min_q = td_q.get(self.tensor_keys.action_value).min(0)[0] + + if log_prob.shape != min_q.shape: raise RuntimeError( - "expected log_pi to require gradient for the alpha loss)" + f"Losses shape mismatch: {log_prob.shape} and {min_q.shape}" ) + + # like in continuous SAC, we take the entropy term and subtract the minimum of the value ensemble + loss = self._alpha * log_prob - min_q + # unlike in continuous SAC, we can compute the exact expectation over all discrete actions + loss = (prob * loss).sum(-1) + + return loss, {"log_prob": (log_prob * prob).sum(-1).detach()} + + def _alpha_loss(self, log_prob: Tensor) -> Tensor: if self.target_entropy is not None: # we can compute this loss even if log_alpha is not a parameter - alpha_loss = -self.log_alpha * (log_pi.detach() + self.target_entropy) + alpha_loss = -self.log_alpha * (log_prob + self.target_entropy) else: # placeholder - alpha_loss = torch.zeros_like(log_pi) + alpha_loss = torch.zeros_like(log_prob) return alpha_loss + @property + def _alpha(self): + if self.min_log_alpha is not None: + self.log_alpha.data.clamp_(self.min_log_alpha, self.max_log_alpha) + with torch.no_grad(): + alpha = self.log_alpha.exp() + return alpha + + @property + @_cache_values + def _cached_detached_qvalue_params(self): + return self.qvalue_network_params.detach() + def make_value_estimator(self, value_type: ValueEstimators = None, **hyperparams): if value_type is None: value_type = self.default_value_estimator self.value_type = value_type - value_net = None hp = dict(default_value_kwargs(value_type)) hp.update(hyperparams) if hasattr(self, "gamma"): @@ -1233,12 +1236,12 @@ def make_value_estimator(self, value_type: ValueEstimators = None, **hyperparams if value_type is ValueEstimators.TD1: self._value_estimator = TD1Estimator( **hp, - value_network=value_net, + value_network=None, ) elif value_type is ValueEstimators.TD0: self._value_estimator = TD0Estimator( **hp, - value_network=value_net, + value_network=None, ) elif value_type is ValueEstimators.GAE: raise NotImplementedError( @@ -1247,7 +1250,7 @@ def make_value_estimator(self, value_type: ValueEstimators = None, **hyperparams elif value_type is ValueEstimators.TDLambda: self._value_estimator = TDLambdaEstimator( **hp, - value_network=value_net, + value_network=None, ) else: raise NotImplementedError(f"Unknown value type {value_type}") From b67b1cfe28498fdd2bf718682c89fa6d7c1f94b8 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Wed, 30 Aug 2023 08:52:12 +0100 Subject: [PATCH 040/148] [Feature] Parallel environments lazy heterogenous data compatibility (#1436) Signed-off-by: Matteo Bettini Co-authored-by: vmoens --- docs/source/reference/data.rst | 1 + test/test_env.py | 26 ++++++++++++++++++++++++++ torchrl/data/__init__.py | 2 +- torchrl/data/utils.py | 16 ++++++++++++++++ torchrl/envs/common.py | 2 +- torchrl/envs/vec_env.py | 28 ++++++++++++++++++---------- 6 files changed, 63 insertions(+), 12 deletions(-) diff --git a/docs/source/reference/data.rst b/docs/source/reference/data.rst index f8618b80a25..cd2b71a0922 100644 --- a/docs/source/reference/data.rst +++ b/docs/source/reference/data.rst @@ -257,3 +257,4 @@ Utils MultiStep consolidate_spec check_no_exclusive_keys + contains_lazy_spec diff --git a/test/test_env.py b/test/test_env.py index 49604665563..4b9c9404fbf 100644 --- a/test/test_env.py +++ b/test/test_env.py @@ -1946,6 +1946,32 @@ def test_rollout_policy(self, batch_size, rollout_steps, count): else: assert (td["lazy"][..., i]["action"] == 0).all() + @pytest.mark.parametrize("batch_size", [(1, 2)]) + @pytest.mark.parametrize("env_type", ["serial", "parallel"]) + def test_vec_env(self, batch_size, env_type, rollout_steps=4, n_workers=2): + env_fun = lambda: HeteroCountingEnv(batch_size=batch_size) + if env_type == "serial": + vec_env = SerialEnv(n_workers, env_fun) + else: + vec_env = ParallelEnv(n_workers, env_fun) + vec_batch_size = (n_workers,) + batch_size + # check_env_specs(vec_env, return_contiguous=False) + policy = HeteroCountingEnvPolicy(vec_env.input_spec["_action_spec"]) + vec_env.reset() + td = vec_env.rollout( + rollout_steps, + policy=policy, + return_contiguous=False, + break_when_any_done=False, + ) + td = dense_stack_tds(td) + for i in range(env_fun().n_nested_dim): + agent_obs = td["lazy"][(0,) * len(vec_batch_size)][..., i][f"tensor_{i}"] + for _ in range(i + 1): + agent_obs = agent_obs.mean(-1) + assert (agent_obs == torch.arange(rollout_steps)).all() + assert (td["lazy"][..., i]["action"] == 1).all() + @pytest.mark.parametrize( "envclass", diff --git a/torchrl/data/__init__.py b/torchrl/data/__init__.py index 0d9eae41abf..4c90146ac7f 100644 --- a/torchrl/data/__init__.py +++ b/torchrl/data/__init__.py @@ -46,4 +46,4 @@ UnboundedContinuousTensorSpec, UnboundedDiscreteTensorSpec, ) -from .utils import check_no_exclusive_keys, consolidate_spec +from .utils import check_no_exclusive_keys, consolidate_spec, contains_lazy_spec diff --git a/torchrl/data/utils.py b/torchrl/data/utils.py index dad28c710bb..5add739b589 100644 --- a/torchrl/data/utils.py +++ b/torchrl/data/utils.py @@ -206,6 +206,22 @@ def check_no_exclusive_keys(spec: TensorSpec, recurse: bool = True): return True +def contains_lazy_spec(spec: TensorSpec) -> bool: + """Returns true if a spec contains lazy stacked specs. + + Args: + spec (TensorSpec): the spec to check + + """ + if isinstance(spec, (LazyStackedTensorSpec, LazyStackedCompositeSpec)): + return True + elif isinstance(spec, CompositeSpec): + for inner_spec in spec.values(): + if contains_lazy_spec(inner_spec): + return True + return False + + class CloudpickleWrapper(object): """A wrapper for functions that allow for serialization in multiprocessed settings.""" diff --git a/torchrl/envs/common.py b/torchrl/envs/common.py index 8453664dc43..d3871c09ed5 100644 --- a/torchrl/envs/common.py +++ b/torchrl/envs/common.py @@ -89,7 +89,7 @@ def metadata_from_env(env) -> EnvMetaData: return EnvMetaData(tensordict, specs, batch_size, env_str, device, batch_locked) def expand(self, *size: int) -> EnvMetaData: - tensordict = self.tensordict.expand(*size).to_tensordict() + tensordict = self.tensordict.expand(*size).clone() batch_size = torch.Size(list(size)) return EnvMetaData( tensordict, diff --git a/torchrl/envs/vec_env.py b/torchrl/envs/vec_env.py index 108066522e1..cfd46d6b834 100644 --- a/torchrl/envs/vec_env.py +++ b/torchrl/envs/vec_env.py @@ -30,7 +30,7 @@ TensorSpec, UnboundedContinuousTensorSpec, ) -from torchrl.data.utils import CloudpickleWrapper, DEVICE_TYPING +from torchrl.data.utils import CloudpickleWrapper, contains_lazy_spec, DEVICE_TYPING from torchrl.envs.common import _EnvWrapper, EnvBase from torchrl.envs.env_creator import get_env_metadata @@ -299,6 +299,7 @@ def _set_properties(self): [meta_data.tensordict for meta_data in meta_data], 0 ) self._batch_locked = meta_data[0].batch_locked + self.has_lazy_inputs = contains_lazy_spec(self.input_spec) def state_dict(self) -> OrderedDict: raise NotImplementedError @@ -712,6 +713,7 @@ def _start_workers(self) -> None: self.env_input_keys, self.device, self.allow_step_when_done, + self.has_lazy_inputs, ), ) w.daemon = True @@ -759,7 +761,7 @@ def load_state_dict(self, state_dict: OrderedDict) -> None: @_check_start def _step(self, tensordict: TensorDictBase) -> TensorDictBase: self._assert_tensordict_shape(tensordict) - if self._single_task: + if self._single_task and not self.has_lazy_inputs: # this is faster than update_ but won't work for lazy stacks for key in self.env_input_keys: # self.shared_tensordict_parent.set( @@ -983,6 +985,7 @@ def _run_worker_pipe_shared_mem( env_input_keys: Dict[str, Any], device: DEVICE_TYPING = None, allow_step_when_done: bool = False, + has_lazy_inputs: bool = False, verbose: bool = False, ) -> None: if device is None: @@ -1064,15 +1067,20 @@ def _run_worker_pipe_shared_mem( raise RuntimeError("called 'init' before step") i += 1 if local_tensordict is not None: - for key in env_input_keys: - # local_tensordict.set(key, shared_tensordict.get(key)) - key = _unravel_key_to_tuple(key) - local_tensordict._set_tuple( - key, - shared_tensordict._get_tuple(key, None), - inplace=False, - validated=True, + if has_lazy_inputs: + local_tensordict.update( + shared_tensordict.select(*env_input_keys, strict=False) ) + else: + for key in env_input_keys: + # local_tensordict.set(key, shared_tensordict.get(key)) + key = _unravel_key_to_tuple(key) + local_tensordict._set_tuple( + key, + shared_tensordict._get_tuple(key, None), + inplace=False, + validated=True, + ) else: local_tensordict = shared_tensordict.clone(recurse=False) local_tensordict = env._step(local_tensordict) From d0f8bcb0c6eb36fa41128ce4a2f23b0d5f36df43 Mon Sep 17 00:00:00 2001 From: Sebastian Dittert Date: Wed, 30 Aug 2023 09:57:57 +0200 Subject: [PATCH 041/148] [Algorithm] Online Decision transformer (#1149) Co-authored-by: vmoens Co-authored-by: Mateusz Guzek --- .../unittest/linux/scripts/environment.yml | 1 + .../linux_examples/scripts/environment.yml | 3 +- .../linux_examples/scripts/run_all.sh | 53 +- .../linux_examples/scripts/run_test.sh | 27 +- benchmarks/conftest.py | 22 +- docs/source/reference/modules.rst | 13 +- docs/source/reference/objectives.rst | 10 + examples/decision_transformer/dt.py | 98 ++++ examples/decision_transformer/dt_config.yaml | 64 +++ examples/decision_transformer/lamb.py | 165 +++++++ examples/decision_transformer/odt_config.yaml | 66 +++ examples/decision_transformer/online_dt.py | 111 +++++ examples/decision_transformer/utils.py | 454 ++++++++++++++++++ examples/iql/iql_online.py | 24 +- examples/multiagent/utils/logging.py | 3 +- test/conftest.py | 22 +- test/test_actors.py | 5 +- test/test_cost.py | 368 +++++++++++++- test/test_modules.py | 74 +++ test/test_tensordictmodules.py | 73 +++ torchrl/data/datasets/d4rl.py | 3 + torchrl/envs/common.py | 2 +- torchrl/envs/transforms/transforms.py | 47 +- torchrl/modules/__init__.py | 4 + torchrl/modules/distributions/utils.py | 2 +- torchrl/modules/models/__init__.py | 3 + .../modules/models/decision_transformer.py | 182 +++++++ torchrl/modules/models/models.py | 185 ++++++- torchrl/modules/tensordict_module/__init__.py | 1 + torchrl/modules/tensordict_module/actors.py | 215 ++++++++- torchrl/objectives/__init__.py | 1 + torchrl/objectives/decision_transformer.py | 309 ++++++++++++ 32 files changed, 2537 insertions(+), 73 deletions(-) create mode 100644 examples/decision_transformer/dt.py create mode 100644 examples/decision_transformer/dt_config.yaml create mode 100644 examples/decision_transformer/lamb.py create mode 100644 examples/decision_transformer/odt_config.yaml create mode 100644 examples/decision_transformer/online_dt.py create mode 100644 examples/decision_transformer/utils.py create mode 100644 torchrl/modules/models/decision_transformer.py create mode 100644 torchrl/objectives/decision_transformer.py diff --git a/.circleci/unittest/linux/scripts/environment.yml b/.circleci/unittest/linux/scripts/environment.yml index f27bae7da6c..ed33f11b27f 100644 --- a/.circleci/unittest/linux/scripts/environment.yml +++ b/.circleci/unittest/linux/scripts/environment.yml @@ -28,3 +28,4 @@ dependencies: - av - coverage - ray + - transformers diff --git a/.circleci/unittest/linux_examples/scripts/environment.yml b/.circleci/unittest/linux_examples/scripts/environment.yml index a671b55c48d..ef9251e96c9 100644 --- a/.circleci/unittest/linux_examples/scripts/environment.yml +++ b/.circleci/unittest/linux_examples/scripts/environment.yml @@ -20,11 +20,10 @@ dependencies: - pyyaml - scipy - hydra-core - - tensorboard - imageio==2.26.0 - - wandb - dm_control - mlflow - av - coverage - vmas + - transformers diff --git a/.circleci/unittest/linux_examples/scripts/run_all.sh b/.circleci/unittest/linux_examples/scripts/run_all.sh index 3612d1e6743..02fd5cadc4a 100755 --- a/.circleci/unittest/linux_examples/scripts/run_all.sh +++ b/.circleci/unittest/linux_examples/scripts/run_all.sh @@ -7,29 +7,16 @@ set -v # ================================ Init ============================================== # -if [[ $OSTYPE != 'darwin'* ]]; then - apt-get update && apt-get upgrade -y - apt-get install -y vim git wget - - apt-get install -y libglfw3 libgl1-mesa-glx libosmesa6 libglew-dev - apt-get install -y libglvnd0 libgl1 libglx0 libegl1 libgles2 - - if [ "${CU_VERSION:-}" == cpu ] ; then - # solves version `GLIBCXX_3.4.29' not found for tensorboard -# apt-get install -y gcc-4.9 - apt-get upgrade -y libstdc++6 - apt-get dist-upgrade -y - else - apt-get install -y g++ gcc - fi +apt-get update && apt-get upgrade -y +apt-get install -y vim git wget -fi +apt-get install -y libglfw3 libgl1-mesa-glx libosmesa6 libglew-dev libosmesa6-dev +apt-get install -y libglvnd0 libgl1 libglx0 libegl1 libgles2 +apt-get install -y g++ gcc patchelf this_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" -if [[ $OSTYPE != 'darwin'* ]]; then - # from cudagl docker image - cp $this_dir/10_nvidia.json /usr/share/glvnd/egl_vendor.d/10_nvidia.json -fi +# from cudagl docker image +cp $this_dir/10_nvidia.json /usr/share/glvnd/egl_vendor.d/10_nvidia.json # ==================================================================================== # @@ -69,8 +56,8 @@ conda activate "${env_dir}" printf "* Installing mujoco and related\n" mkdir -p $root_dir/.mujoco cd $root_dir/.mujoco/ -wget https://github.com/deepmind/mujoco/releases/download/2.1.1/mujoco-2.1.1-linux-x86_64.tar.gz -tar -xf mujoco-2.1.1-linux-x86_64.tar.gz +#wget https://github.com/deepmind/mujoco/releases/download/2.1.1/mujoco-2.1.1-linux-x86_64.tar.gz +#tar -xf mujoco-2.1.1-linux-x86_64.tar.gz wget https://mujoco.org/download/mujoco210-linux-x86_64.tar.gz tar -xf mujoco210-linux-x86_64.tar.gz cd "${root_dir}" @@ -80,9 +67,16 @@ printf "* Installing dependencies (except PyTorch)\n" echo " - python=${PYTHON_VERSION}" >> "${this_dir}/environment.yml" cat "${this_dir}/environment.yml" +export MUJOCO_PY_MUJOCO_PATH=$root_dir/.mujoco/mujoco210 +export DISPLAY=unix:0.0 +#export MJLIB_PATH=$root_dir/.mujoco/mujoco-2.1.1/lib/libmujoco.so.2.1.1 +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$root_dir/.mujoco/mujoco210/bin +export SDL_VIDEODRIVER=dummy +export MUJOCO_GL=egl +export PYOPENGL_PLATFORM=egl + conda env config vars set MUJOCO_PY_MUJOCO_PATH=$root_dir/.mujoco/mujoco210 \ DISPLAY=unix:0.0 \ - MJLIB_PATH=$root_dir/.mujoco/mujoco-2.1.1/lib/libmujoco.so.2.1.1 \ LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$root_dir/.mujoco/mujoco210/bin \ SDL_VIDEODRIVER=dummy \ MUJOCO_GL=egl \ @@ -95,6 +89,19 @@ conda env update --file "${this_dir}/environment.yml" --prune conda deactivate conda activate "${env_dir}" +# install d4rl +pip install free-mujoco-py +pip install git+https://github.com/Farama-Foundation/d4rl@master#egg=d4rl + +# TODO: move this down -- will break torchrl installation +conda install -y -c conda-forge libstdcxx-ng=12 +## find libstdc +STDC_LOC=$(find conda/ -name "libstdc++.so.6" | head -1) +conda env config vars set LD_PRELOAD=${root_dir}/$STDC_LOC + +# compile mujoco-py (bc it's done at runtime for whatever reason someone thought it was a good idea) +python -c """import gym;import d4rl""" + # install ale-py: manylinux names are broken for CentOS so we need to manually download and # rename them PY_VERSION=$(python --version) diff --git a/.circleci/unittest/linux_examples/scripts/run_test.sh b/.circleci/unittest/linux_examples/scripts/run_test.sh index 5d46ad5dda3..ba4a7b31b85 100755 --- a/.circleci/unittest/linux_examples/scripts/run_test.sh +++ b/.circleci/unittest/linux_examples/scripts/run_test.sh @@ -26,9 +26,28 @@ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$lib_dir export MKL_THREADING_LAYER=GNU python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test.py -v --durations 200 -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test_deps.py -v --durations 200 +#python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test_deps.py -v --durations 200 + +# ==================================================================================== # +# ================================ gym 0.23 ========================================== # # With batched environments +python .circleci/unittest/helpers/coverage_run_parallel.py examples/decision_transformer/dt.py \ + optim.pretrain_gradient_steps=55 \ + optim.updates_per_episode=3 \ + optim.warmup_steps=10 \ + optim.device=cuda:0 \ + logger.backend= +python .circleci/unittest/helpers/coverage_run_parallel.py examples/decision_transformer/online_dt.py \ + optim.pretrain_gradient_steps=55 \ + optim.updates_per_episode=3 \ + optim.warmup_steps=10 \ + optim.device=cuda:0 \ + logger.backend= + +# ==================================================================================== # +# ================================ Gymnasium ========================================= # + python .circleci/unittest/helpers/coverage_run_parallel.py examples/ppo/ppo.py \ env.num_envs=1 \ env.device=cuda:0 \ @@ -136,7 +155,8 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/iql/iql_onli env_per_collector=2 \ collector_device=cuda:0 \ device=cuda:0 \ - mode=offline + mode=offline \ + logger= # With single envs python .circleci/unittest/helpers/coverage_run_parallel.py examples/dreamer/dreamer.py \ @@ -234,7 +254,8 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/iql/iql_onli env_per_collector=1 \ mode=offline \ device=cuda:0 \ - collector_device=cuda:0 + collector_device=cuda:0 \ + logger= python .circleci/unittest/helpers/coverage_run_parallel.py examples/td3/td3.py \ collector.total_frames=48 \ collector.init_random_frames=10 \ diff --git a/benchmarks/conftest.py b/benchmarks/conftest.py index d786cc4244d..7f320ff2e8d 100644 --- a/benchmarks/conftest.py +++ b/benchmarks/conftest.py @@ -57,7 +57,7 @@ def pytest_addoption(parser): parser.addoption("--rank", action="store") -@pytest.fixture(autouse=True) +@pytest.fixture(scope="session", autouse=True) def set_warnings() -> None: warnings.filterwarnings( "ignore", @@ -69,3 +69,23 @@ def set_warnings() -> None: category=UserWarning, message=r"Couldn't cast the policy onto the desired device on remote process", ) + warnings.filterwarnings( + "ignore", + category=DeprecationWarning, + message=r"Deprecated call to `pkg_resources.declare_namespace", + ) + warnings.filterwarnings( + "ignore", + category=DeprecationWarning, + message=r"Using or importing the ABCs", + ) + warnings.filterwarnings( + "ignore", + category=DeprecationWarning, + message=r"Please use `coo_matrix` from the `scipy.sparse` namespace", + ) + warnings.filterwarnings( + "ignore", + category=DeprecationWarning, + message=r"jax.tree_util.register_keypaths is deprecated|jax.ShapedArray is deprecated", + ) diff --git a/docs/source/reference/modules.rst b/docs/source/reference/modules.rst index bb650864c0a..3425fdf442d 100644 --- a/docs/source/reference/modules.rst +++ b/docs/source/reference/modules.rst @@ -261,7 +261,7 @@ without shared parameters. It is mainly intended as a replacement for ActorCriticWrapper ActorValueOperator ValueOperator - + DecisionTransformerInferenceWrapper Domain-specific TensorDict modules ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -322,18 +322,21 @@ algorithms, such as DQN, DDPG or Dreamer. :toctree: generated/ :template: rl_template_noinherit.rst - DuelingCnnDQNet - DistributionalDQNnet + DTActor DdpgCnnActor DdpgCnnQNet DdpgMlpActor DdpgMlpQNet + DecisionTransformer + DistributionalDQNnet DreamerActor + DuelingCnnDQNet LSTMModule - ObsEncoder ObsDecoder - RSSMPrior + ObsEncoder + OnlineDTActor RSSMPosterior + RSSMPrior Multi-agent-specific modules ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/source/reference/objectives.rst b/docs/source/reference/objectives.rst index 0e63b67db84..26979e2ae96 100644 --- a/docs/source/reference/objectives.rst +++ b/docs/source/reference/objectives.rst @@ -137,6 +137,16 @@ CQL CQLLoss +DT +---- + +.. autosummary:: + :toctree: generated/ + :template: rl_template_noinherit.rst + + DTLoss + OnlineDTLoss + TD3 ---- diff --git a/examples/decision_transformer/dt.py b/examples/decision_transformer/dt.py new file mode 100644 index 00000000000..30e19608cf7 --- /dev/null +++ b/examples/decision_transformer/dt.py @@ -0,0 +1,98 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. +"""Decision Transformer Example. +This is a self-contained example of an offline Decision Transformer training script. +The helper functions are coded in the utils.py associated with this script. +""" + +import hydra +import torch +import tqdm + +from torchrl.envs.utils import ExplorationType, set_exploration_type +from torchrl.modules.tensordict_module import DecisionTransformerInferenceWrapper + +from utils import ( + make_dt_loss, + make_dt_model, + make_dt_optimizer, + make_env, + make_logger, + make_offline_replay_buffer, +) + + +@hydra.main(config_path=".", config_name="dt_config") +def main(cfg: "DictConfig"): # noqa: F821 + model_device = cfg.optim.device + logger = make_logger(cfg) + offline_buffer, obs_loc, obs_std = make_offline_replay_buffer( + cfg.replay_buffer, cfg.env.reward_scaling + ) + test_env = make_env(cfg.env, obs_loc, obs_std) + actor = make_dt_model(cfg) + policy = actor.to(model_device) + + loss_module = make_dt_loss(cfg.loss, actor) + transformer_optim, scheduler = make_dt_optimizer(cfg.optim, loss_module) + inference_policy = DecisionTransformerInferenceWrapper( + policy=policy, + inference_context=cfg.env.inference_context, + ).to(model_device) + + pbar = tqdm.tqdm(total=cfg.optim.pretrain_gradient_steps) + + r0 = None + l0 = None + + pretrain_gradient_steps = cfg.optim.pretrain_gradient_steps + clip_grad = cfg.optim.clip_grad + eval_steps = cfg.logger.eval_steps + pretrain_log_interval = cfg.logger.pretrain_log_interval + reward_scaling = cfg.env.reward_scaling + + print(" ***Pretraining*** ") + # Pretraining + for i in range(pretrain_gradient_steps): + pbar.update(i) + data = offline_buffer.sample() + # loss + loss_vals = loss_module(data.to(model_device)) + # backprop + transformer_loss = loss_vals["loss"] + + transformer_optim.zero_grad() + torch.nn.utils.clip_grad_norm_(policy.parameters(), clip_grad) + transformer_loss.backward() + transformer_optim.step() + + scheduler.step() + + # evaluation + with set_exploration_type(ExplorationType.MEAN), torch.no_grad(): + if i % pretrain_log_interval == 0: + eval_td = test_env.rollout( + max_steps=eval_steps, + policy=inference_policy, + auto_cast_to_device=True, + ) + if r0 is None: + r0 = eval_td["next", "reward"].sum(1).mean().item() / reward_scaling + if l0 is None: + l0 = transformer_loss.item() + + eval_reward = eval_td["next", "reward"].sum(1).mean().item() / reward_scaling + if logger is not None: + for key, value in loss_vals.items(): + logger.log_scalar(key, value.item(), i) + logger.log_scalar("evaluation reward", eval_reward, i) + + pbar.set_description( + f"[Pre-Training] loss: {transformer_loss.item(): 4.4f} (init: {l0: 4.4f}), evaluation reward: {eval_reward: 4.4f} (init={r0: 4.4f})" + ) + + +if __name__ == "__main__": + main() diff --git a/examples/decision_transformer/dt_config.yaml b/examples/decision_transformer/dt_config.yaml new file mode 100644 index 00000000000..69ced6be5d8 --- /dev/null +++ b/examples/decision_transformer/dt_config.yaml @@ -0,0 +1,64 @@ +# Task and env +env: + name: HalfCheetah-v3 + task: "" + library: gym + stacked_frames: 20 + inference_context: 5 + n_samples_stats: 2000 + frame_skip: 1 + num_train_envs: 1 + num_eval_envs: 10 + reward_scaling: 0.001 # for r2g + noop: 1 + seed: 1 + target_return_mode: reduce + eval_target_return: 6000 + collect_target_return: 12000 + +# logger +logger: + backend: wandb + model_name: DT + exp_name: DT-HalfCheetah-medium-v2 + pretrain_log_interval: 500 # record interval in frames + fintune_log_interval: 1 + eval_steps: 1000 + +# Buffer +replay_buffer: + dataset: halfcheetah-medium-v2 + batch_size: 64 + prb: 0 + stacked_frames: 20 + buffer_prefetch: 64 + capacity: 1_000_000 + buffer_scratch_dir: "/tmp/" + device: cpu + prefetch: 3 + +# Optimization +optim: + device: cuda:0 + lr: 1.0e-4 + weight_decay: 5.0e-4 + batch_size: 64 + lr_scheduler: "" + pretrain_gradient_steps: 55000 + updates_per_episode: 300 + warmup_steps: 10000 + clip_grad: 0.25 + +# loss +loss: + loss_function: "l2" + +transformer: + n_embd: 128 + n_layer: 3 + n_head: 1 + n_inner: 512 # 4*128 + activation: relu + n_positions: 1024 + resid_pdrop: 0.1 + attn_pdrop: 0.1 diff --git a/examples/decision_transformer/lamb.py b/examples/decision_transformer/lamb.py new file mode 100644 index 00000000000..7f874b6e049 --- /dev/null +++ b/examples/decision_transformer/lamb.py @@ -0,0 +1,165 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. +# Lamb optimizer directly copied from https://github.com/facebookresearch/online-dt +import math + +import torch +from torch.optim import Optimizer + + +class Lamb(Optimizer): + """Implements a pure pytorch variant of FuseLAMB (NvLamb variant) optimizer from apex.optimizers.FusedLAMB + reference: https://github.com/NVIDIA/DeepLearningExamples/blob/master/PyTorch/LanguageModeling/Transformer-XL/pytorch/lamb.py + LAMB was proposed in `Large Batch Optimization for Deep Learning: Training BERT in 76 minutes`_. + Arguments: + params (iterable): iterable of parameters to optimize or dicts defining parameter groups. + lr (float, optional): learning rate. (default: 1e-3) + betas (Tuple[float, float], optional): coefficients used for computing + running averages of gradient and its norm. (default: (0.9, 0.999)) + eps (float, optional): term added to the denominator to improve + numerical stability. (default: 1e-8) + weight_decay (float, optional): weight decay (L2 penalty) (default: 0) + grad_averaging (bool, optional): whether apply (1-beta2) to grad when + calculating running averages of gradient. (default: True) + max_grad_norm (float, optional): value used to clip global grad norm (default: 1.0) + trust_clip (bool): enable LAMBC trust ratio clipping (default: False) + always_adapt (boolean, optional): Apply adaptive learning rate to 0.0 + weight decay parameter (default: False) + .. _Large Batch Optimization for Deep Learning - Training BERT in 76 minutes: + https://arxiv.org/abs/1904.00962 + .. _On the Convergence of Adam and Beyond: + https://openreview.net/forum?id=ryQu7f-RZ + """ + + def __init__( + self, + params, + lr=1e-3, + bias_correction=True, + betas=(0.9, 0.999), + eps=1e-6, + weight_decay=0.01, + grad_averaging=True, + max_grad_norm=1.0, + trust_clip=False, + always_adapt=False, + ): + defaults = { + "lr": lr, + "bias_correction": bias_correction, + "betas": betas, + "eps": eps, + "weight_decay": weight_decay, + "grad_averaging": grad_averaging, + "max_grad_norm": max_grad_norm, + "trust_clip": trust_clip, + "always_adapt": always_adapt, + } + super().__init__(params, defaults) + + @torch.no_grad() + def step(self, closure=None): + """Performs a single optimization step. + Arguments: + closure (callable, optional): A closure that reevaluates the model + and returns the loss. + """ + loss = None + if closure is not None: + with torch.enable_grad(): + loss = closure() + + device = self.param_groups[0]["params"][0].device + one_tensor = torch.tensor( + 1.0, device=device + ) # because torch.where doesn't handle scalars correctly + global_grad_norm = torch.zeros(1, device=device) + for group in self.param_groups: + for p in group["params"]: + if p.grad is None: + continue + grad = p.grad + if grad.is_sparse: + raise RuntimeError( + "Lamb does not support sparse gradients, consider SparseAdam instad." + ) + global_grad_norm.add_(grad.pow(2).sum()) + + global_grad_norm = torch.sqrt(global_grad_norm) + # FIXME it'd be nice to remove explicit tensor conversion of scalars when torch.where promotes + # scalar types properly https://github.com/pytorch/pytorch/issues/9190 + max_grad_norm = torch.tensor(self.defaults["max_grad_norm"], device=device) + clip_global_grad_norm = torch.where( + global_grad_norm > max_grad_norm, + global_grad_norm / max_grad_norm, + one_tensor, + ) + + for group in self.param_groups: + bias_correction = 1 if group["bias_correction"] else 0 + beta1, beta2 = group["betas"] + grad_averaging = 1 if group["grad_averaging"] else 0 + beta3 = 1 - beta1 if grad_averaging else 1.0 + + # assume same step across group now to simplify things + # per parameter step can be easily support by making it tensor, or pass list into kernel + if "step" in group: + group["step"] += 1 + else: + group["step"] = 1 + + if bias_correction: + bias_correction1 = 1 - beta1 ** group["step"] + bias_correction2 = 1 - beta2 ** group["step"] + else: + bias_correction1, bias_correction2 = 1.0, 1.0 + + for p in group["params"]: + if p.grad is None: + continue + grad = p.grad.div_(clip_global_grad_norm) + state = self.state[p] + + # State initialization + if len(state) == 0: + # Exponential moving average of gradient valuesa + state["exp_avg"] = torch.zeros_like(p) + # Exponential moving average of squared gradient values + state["exp_avg_sq"] = torch.zeros_like(p) + + exp_avg, exp_avg_sq = state["exp_avg"], state["exp_avg_sq"] + + # Decay the first and second moment running average coefficient + exp_avg.mul_(beta1).add_(grad, alpha=beta3) # m_t + exp_avg_sq.mul_(beta2).addcmul_(grad, grad, value=1 - beta2) # v_t + + denom = (exp_avg_sq.sqrt() / math.sqrt(bias_correction2)).add_( + group["eps"] + ) + update = (exp_avg / bias_correction1).div_(denom) + + weight_decay = group["weight_decay"] + if weight_decay != 0: + update.add_(p, alpha=weight_decay) + + if weight_decay != 0 or group["always_adapt"]: + # Layer-wise LR adaptation. By default, skip adaptation on parameters that are + # excluded from weight decay, unless always_adapt == True, then always enabled. + w_norm = p.norm(2.0) + g_norm = update.norm(2.0) + # FIXME nested where required since logical and/or not working in PT XLA + trust_ratio = torch.where( + w_norm > 0, + torch.where(g_norm > 0, w_norm / g_norm, one_tensor), + one_tensor, + ) + if group["trust_clip"]: + # LAMBC trust clipping, upper bound fixed at one + trust_ratio = torch.minimum(trust_ratio, one_tensor) + update.mul_(trust_ratio) + + p.add_(update, alpha=-group["lr"]) + + return loss diff --git a/examples/decision_transformer/odt_config.yaml b/examples/decision_transformer/odt_config.yaml new file mode 100644 index 00000000000..de8d5ffb6af --- /dev/null +++ b/examples/decision_transformer/odt_config.yaml @@ -0,0 +1,66 @@ +# Task and env +env: + name: HalfCheetah-v3 + task: "" + library: gym + stacked_frames: 20 + inference_context: 5 + n_samples_stats: 2000 + frame_skip: 1 + num_train_envs: 1 + num_eval_envs: 10 + reward_scaling: 0.001 # for r2g + noop: 1 + seed: 42 + target_return_mode: reduce + eval_target_return: 6000 + collect_target_return: 12000 + + +# logger +logger: + backend: wandb + exp_name: oDT-HalfCheetah-medium-v2 + model_name: oDT + pretrain_log_interval: 500 # record interval in frames + fintune_log_interval: 1 + eval_steps: 1000 + +# Buffer +replay_buffer: + dataset: halfcheetah-medium-v2 + batch_size: 256 + prb: 0 + stacked_frames: 20 + buffer_prefetch: 64 + capacity: 1_000_000 + buffer_scratch_dir: "/tmp/" + device: cuda:0 + prefetch: 3 + +# Optimization +optim: + device: cuda:0 + lr: 1.0e-4 + weight_decay: 5.0e-4 + batch_size: 256 + lr_scheduler: "" + pretrain_gradient_steps: 10000 + updates_per_episode: 300 + warmup_steps: 10000 + clip_grad: 0.25 + +# loss +loss: + alpha_init: 0.1 + target_entropy: auto + +transformer: + n_embd: 512 + n_layer: 4 + n_head: 4 + n_inner: 2048 # 4*512 + activation: relu + n_positions: 1024 + resid_pdrop: 0.1 + attn_pdrop: 0.1 diff --git a/examples/decision_transformer/online_dt.py b/examples/decision_transformer/online_dt.py new file mode 100644 index 00000000000..01ab12dfabd --- /dev/null +++ b/examples/decision_transformer/online_dt.py @@ -0,0 +1,111 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. +"""Online Decision Transformer Example. +This is a self-contained example of an Online Decision Transformer training script. +The helper functions are coded in the utils.py associated with this script. +""" + +import hydra +import torch +import tqdm + +from torchrl.envs.libs.gym import set_gym_backend + +from torchrl.envs.utils import ExplorationType, set_exploration_type +from torchrl.modules.tensordict_module import DecisionTransformerInferenceWrapper + +from utils import ( + make_env, + make_logger, + make_odt_loss, + make_odt_model, + make_odt_optimizer, + make_offline_replay_buffer, +) + + +@set_gym_backend("gym") # D4RL uses gym so we make sure gymnasium is hidden +@hydra.main(config_path=".", config_name="odt_config") +def main(cfg: "DictConfig"): # noqa: F821 + model_device = cfg.optim.device + + logger = make_logger(cfg) + offline_buffer, obs_loc, obs_std = make_offline_replay_buffer( + cfg.replay_buffer, cfg.env.reward_scaling + ) + test_env = make_env(cfg.env, obs_loc, obs_std) + + actor = make_odt_model(cfg) + policy = actor.to(model_device) + + loss_module = make_odt_loss(cfg.loss, policy) + transformer_optim, temperature_optim, scheduler = make_odt_optimizer( + cfg.optim, loss_module + ) + inference_policy = DecisionTransformerInferenceWrapper( + policy=policy, + inference_context=cfg.env.inference_context, + ).to(model_device) + + pbar = tqdm.tqdm(total=cfg.optim.pretrain_gradient_steps) + + r0 = None + l0 = None + pretrain_gradient_steps = cfg.optim.pretrain_gradient_steps + clip_grad = cfg.optim.clip_grad + eval_steps = cfg.logger.eval_steps + pretrain_log_interval = cfg.logger.pretrain_log_interval + reward_scaling = cfg.env.reward_scaling + + print(" ***Pretraining*** ") + # Pretraining + for i in range(pretrain_gradient_steps): + pbar.update(i) + data = offline_buffer.sample() + # loss + loss_vals = loss_module(data.to(model_device)) + transformer_loss = loss_vals["loss_log_likelihood"] + loss_vals["loss_entropy"] + temperature_loss = loss_vals["loss_alpha"] + + transformer_optim.zero_grad() + torch.nn.utils.clip_grad_norm_(policy.parameters(), clip_grad) + transformer_loss.backward() + transformer_optim.step() + + temperature_optim.zero_grad() + temperature_loss.backward() + temperature_optim.step() + + scheduler.step() + + # evaluation + with torch.no_grad(), set_exploration_type(ExplorationType.MODE): + inference_policy.eval() + if i % pretrain_log_interval == 0: + eval_td = test_env.rollout( + max_steps=eval_steps, + policy=inference_policy, + auto_cast_to_device=True, + break_when_any_done=False, + ) + inference_policy.train() + if r0 is None: + r0 = eval_td["next", "reward"].sum(1).mean().item() / reward_scaling + if l0 is None: + l0 = transformer_loss.item() + + eval_reward = eval_td["next", "reward"].sum(1).mean().item() / reward_scaling + if logger is not None: + for key, value in loss_vals.items(): + logger.log_scalar(key, value.item(), i) + logger.log_scalar("evaluation reward", eval_reward, i) + + pbar.set_description( + f"[Pre-Training] loss: {transformer_loss.item(): 4.4f} (init: {l0: 4.4f}), evaluation reward: {eval_reward: 4.4f} (init={r0: 4.4f})" + ) + + +if __name__ == "__main__": + main() diff --git a/examples/decision_transformer/utils.py b/examples/decision_transformer/utils.py new file mode 100644 index 00000000000..c181b32ca5d --- /dev/null +++ b/examples/decision_transformer/utils.py @@ -0,0 +1,454 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +import torch.nn + +import torch.optim +from lamb import Lamb +from tensordict.nn import TensorDictModule + +from torchrl.collectors import SyncDataCollector +from torchrl.data import LazyMemmapStorage, TensorDictReplayBuffer +from torchrl.data.datasets.d4rl import D4RLExperienceReplay +from torchrl.data.replay_buffers import RandomSampler +from torchrl.envs import ( + CatFrames, + Compose, + DoubleToFloat, + EnvCreator, + ExcludeTransform, + NoopResetEnv, + ObservationNorm, + RandomCropTensorDict, + Reward2GoTransform, + RewardScaling, + RewardSum, + SerialEnv, + TargetReturn, + TensorDictPrimer, + TransformedEnv, + UnsqueezeTransform, +) +from torchrl.envs.libs.dm_control import DMControlEnv +from torchrl.envs.libs.gym import set_gym_backend +from torchrl.envs.utils import set_exploration_mode +from torchrl.modules import ( + DTActor, + OnlineDTActor, + ProbabilisticActor, + TanhDelta, + TanhNormal, +) + +from torchrl.objectives import DTLoss, OnlineDTLoss +from torchrl.record.loggers import generate_exp_name, get_logger +from torchrl.trainers.helpers.envs import LIBS + +# ==================================================================== +# Environment utils +# ----------------- + + +@set_gym_backend("gym") # D4RL uses gym so we make sure gymnasium is hidden +def make_base_env(env_cfg): + env_library = LIBS[env_cfg.library] + env_name = env_cfg.name + frame_skip = env_cfg.frame_skip + + env_kwargs = { + "env_name": env_name, + "frame_skip": frame_skip, + } + if env_library is DMControlEnv: + env_task = env_cfg.task + env_kwargs.update({"task_name": env_task}) + env = env_library(**env_kwargs) + if env_cfg.noop > 1: + env = TransformedEnv(env, NoopResetEnv(env_cfg.noop)) + return env + + +def make_transformed_env(base_env, env_cfg, obs_loc, obs_std, train=False): + transformed_env = TransformedEnv(base_env) + transformed_env.append_transform( + RewardScaling( + loc=0, scale=env_cfg.reward_scaling, in_keys="reward", standard_normal=False + ) + ) + if train: + transformed_env.append_transform( + TargetReturn( + env_cfg.collect_target_return * env_cfg.reward_scaling, + out_keys=["return_to_go"], + mode=env_cfg.target_return_mode, + ) + ) + else: + transformed_env.append_transform( + TargetReturn( + env_cfg.eval_target_return * env_cfg.reward_scaling, + out_keys=["return_to_go"], + mode=env_cfg.target_return_mode, + ) + ) + + transformed_env.append_transform(TensorDictPrimer(action=base_env.action_spec)) + + transformed_env.append_transform( + DoubleToFloat( + in_keys=["observation"], + in_keys_inv=[], + ) + ) + obsnorm = ObservationNorm( + loc=obs_loc, scale=obs_std, in_keys="observation", standard_normal=True + ) + transformed_env.append_transform(obsnorm) + transformed_env.append_transform( + UnsqueezeTransform(-2, in_keys=["observation", "action", "return_to_go"]) + ) + transformed_env.append_transform( + CatFrames( + in_keys=["observation", "action", "return_to_go"], + N=env_cfg.stacked_frames, + dim=-2, + padding="zeros", + ) + ) + + if train: + transformed_env.append_transform(RewardSum()) + + return transformed_env + + +def make_parallel_env(env_cfg, obs_loc, obs_std, train=False): + if train: + num_envs = env_cfg.num_train_envs + else: + num_envs = env_cfg.num_eval_envs + + def make_env(): + with set_gym_backend("gym"): + return make_base_env(env_cfg) + + env = make_transformed_env( + SerialEnv(num_envs, EnvCreator(make_env)), + env_cfg, + obs_loc, + obs_std, + train, + ) + return env + + +def make_env(env_cfg, obs_loc, obs_std, train=False): + env = make_parallel_env(env_cfg, obs_loc, obs_std, train=train) + return env + + +# ==================================================================== +# Collector and replay buffer +# --------------------------- + + +def make_collector(cfg, policy): + exclude_target_return = ExcludeTransform( + "return_to_go", + ("next", "return_to_go"), + ("next", "action"), + ("next", "observation"), + "scale", + "loc", + ) + cat = CatFrames(in_keys=["action"], N=20, dim=-2, padding="zeros") + transforms = Compose( + exclude_target_return, + cat, + ) + collector_cfg = cfg.collector + collector_class = SyncDataCollector + collector = collector_class( + make_env(cfg.env, train=True), + policy, + frames_per_batch=collector_cfg.frames_per_batch, + total_frames=collector_cfg.total_frames, + device=collector_cfg.collector_devices, + max_frames_per_traj=collector_cfg.max_frames_per_traj, + postproc=transforms, + ) + return collector + + +def make_offline_replay_buffer(rb_cfg, reward_scaling): + r2g = Reward2GoTransform(gamma=1.0, in_keys=["reward"], out_keys=["return_to_go"]) + reward_scale = RewardScaling( + loc=0, scale=reward_scaling, in_keys="return_to_go", standard_normal=False + ) + crop_seq = RandomCropTensorDict(sub_seq_len=rb_cfg.stacked_frames, sample_dim=-1) + + d2f = DoubleToFloat( + in_keys=["observation", ("next", "observation")], + in_keys_inv=[], + ) + exclude = ExcludeTransform( + "next_observations", + # "timeout", + "terminal", + "info", + ("next", "timeout"), + ("next", "terminal"), + ("next", "observation"), + ("next", "info"), + ) + + transforms = Compose( + r2g, + crop_seq, + reward_scale, + d2f, + exclude, + ) + data = D4RLExperienceReplay( + rb_cfg.dataset, + split_trajs=True, + batch_size=rb_cfg.batch_size, + sampler=RandomSampler(), # SamplerWithoutReplacement(drop_last=False), + transform=transforms, + use_timeout_as_done=True, + ) + full_data = data._get_dataset_from_env(rb_cfg.dataset, {}) + loc = full_data["observation"].mean(axis=0).float() + std = full_data["observation"].std(axis=0).float() + obsnorm = ObservationNorm( + loc=loc, scale=std, in_keys="observation", standard_normal=True + ) + data.append_transform(obsnorm) + return data, loc, std + + +def make_online_replay_buffer(offline_buffer, rb_cfg, reward_scaling=0.001): + r2g = Reward2GoTransform(gamma=1.0, out_keys=["return_to_go"]) + reward_scale = RewardScaling( + loc=0, scale=reward_scaling, in_keys="return_to_go", standard_normal=False + ) + catframes = CatFrames( + in_keys=["return_to_go"], + N=rb_cfg.stacked_frames, + dim=-2, + padding="zeros", + as_inverse=True, + ) + transforms = Compose( + r2g, + reward_scale, + catframes, # TODO: cat frames is not an inverse transform doesnt get triggered! + ) + storage = LazyMemmapStorage( + rb_cfg.capacity, rb_cfg.buffer_scratch_dir, device=rb_cfg.device + ) + + replay_buffer = TensorDictReplayBuffer( + pin_memory=False, + prefetch=rb_cfg.prefetch, + storage=storage, + batch_size=rb_cfg.batch_size, + ) + # init buffer with offline data + offline_data = offline_buffer.sample(100000) + offline_data.del_("index") + replay_buffer.extend(offline_data.clone().detach().to_tensordict()) + # add transforms after offline data extension to not trigger reward-to-go calculation + replay_buffer.append_transform(transforms) + + return replay_buffer + + +# ==================================================================== +# Model +# ----- + + +def make_odt_model(cfg): + env_cfg = cfg.env + proof_environment = make_transformed_env( + make_base_env(env_cfg), env_cfg, obs_loc=0, obs_std=1 + ) + + action_spec = proof_environment.action_spec + for key, value in proof_environment.observation_spec.items(): + if key == "observation": + state_dim = value.shape[-1] + in_keys = [ + "observation", + "action", + "return_to_go", + ] + + actor_net = OnlineDTActor( + state_dim=state_dim, + action_dim=action_spec.shape[-1], + transformer_config=cfg.transformer, + ) + + actor_module = TensorDictModule( + actor_net, + in_keys=in_keys, + out_keys=[ + "loc", + "scale", + ], + ) + dist_class = TanhNormal + dist_kwargs = {"min": -1.0, "max": 1.0, "tanh_loc": False, "upscale": 5.0} + + actor = ProbabilisticActor( + spec=action_spec, + in_keys=["loc", "scale"], + out_keys=["action"], + module=actor_module, + distribution_class=dist_class, + distribution_kwargs=dist_kwargs, + default_interaction_mode="random", + cache_dist=False, + return_log_prob=False, + ) + + # init the lazy layers + with torch.no_grad(), set_exploration_mode("random"): + td = proof_environment.rollout(max_steps=100) + td["action"] = td["next", "action"] + actor(td) + + return actor + + +def make_dt_model(cfg): + env_cfg = cfg.env + proof_environment = make_transformed_env( + make_base_env(env_cfg), env_cfg, obs_loc=0, obs_std=1 + ) + + action_spec = proof_environment.action_spec + for key, value in proof_environment.observation_spec.items(): + if key == "observation": + state_dim = value.shape[-1] + in_keys = [ + "observation", + "action", + "return_to_go", + ] + + actor_net = DTActor( + state_dim=state_dim, + action_dim=action_spec.shape[-1], + transformer_config=cfg.transformer, + ) + + actor_module = TensorDictModule( + actor_net, + in_keys=in_keys, + out_keys=["param"], + ) + dist_class = TanhDelta + dist_kwargs = { + "min": action_spec.space.minimum, + "max": action_spec.space.maximum, + } + + actor = ProbabilisticActor( + spec=action_spec, + in_keys=["param"], + out_keys=["action"], + module=actor_module, + distribution_class=dist_class, + distribution_kwargs=dist_kwargs, + default_interaction_mode="random", + cache_dist=False, + return_log_prob=False, + ) + + # init the lazy layers + with torch.no_grad(), set_exploration_mode("random"): + td = proof_environment.rollout(max_steps=100) + td["action"] = td["next", "action"] + actor(td) + + return actor + + +# ==================================================================== +# Online Decision Transformer Loss +# --------- + + +def make_odt_loss(loss_cfg, actor_network): + loss = OnlineDTLoss( + actor_network, + alpha_init=loss_cfg.alpha_init, + target_entropy=loss_cfg.target_entropy, + ) + return loss + + +def make_dt_loss(loss_cfg, actor_network): + loss = DTLoss( + actor_network, + loss_function=loss_cfg.loss_function, + ) + return loss + + +def make_odt_optimizer(optim_cfg, loss_module): + dt_optimizer = Lamb( + loss_module.actor_network_params.flatten_keys().values(), + lr=optim_cfg.lr, + weight_decay=optim_cfg.weight_decay, + eps=1.0e-8, + ) + scheduler = torch.optim.lr_scheduler.LambdaLR( + dt_optimizer, lambda steps: min((steps + 1) / optim_cfg.warmup_steps, 1) + ) + + log_temp_optimizer = torch.optim.Adam( + [loss_module.log_alpha], + lr=1e-4, + betas=[0.9, 0.999], + ) + + return dt_optimizer, log_temp_optimizer, scheduler + + +def make_dt_optimizer(optim_cfg, loss_module): + dt_optimizer = torch.optim.Adam( + loss_module.actor_network_params.flatten_keys().values(), + lr=optim_cfg.lr, + weight_decay=optim_cfg.weight_decay, + eps=1.0e-8, + ) + scheduler = torch.optim.lr_scheduler.LambdaLR( + dt_optimizer, lambda steps: min((steps + 1) / optim_cfg.warmup_steps, 1) + ) + + return dt_optimizer, scheduler + + +# ==================================================================== +# Logging and recording +# --------------------- + + +def make_logger(cfg): + if not cfg.logger.backend: + return None + exp_name = generate_exp_name(cfg.logger.model_name, cfg.logger.exp_name) + cfg.logger.exp_name = exp_name + logger = get_logger( + cfg.logger.backend, + logger_name=cfg.logger.model_name, + experiment_name=exp_name, + wandb_kwargs={"config": cfg}, + ) + return logger diff --git a/examples/iql/iql_online.py b/examples/iql/iql_online.py index cbe9f697a65..16014f4f3ec 100644 --- a/examples/iql/iql_online.py +++ b/examples/iql/iql_online.py @@ -76,12 +76,14 @@ def main(cfg: "DictConfig"): # noqa: F821 device = torch.device(cfg.device) exp_name = generate_exp_name("Online_IQL", cfg.exp_name) - logger = get_logger( - logger_type=cfg.logger, - logger_name="iql_logging", - experiment_name=exp_name, - wandb_kwargs={"mode": cfg.mode}, - ) + logger = None + if cfg.logger: + logger = get_logger( + logger_type=cfg.logger, + logger_name="iql_logging", + experiment_name=exp_name, + wandb_kwargs={"mode": cfg.mode}, + ) torch.manual_seed(cfg.seed) np.random.seed(cfg.seed) @@ -300,8 +302,9 @@ def env_factory(num_workers): "value_loss": np.mean(value_losses), } ) - for key, value in train_log.items(): - logger.log_scalar(key, value, step=collected_frames) + if logger is not None: + for key, value in train_log.items(): + logger.log_scalar(key, value, step=collected_frames) with set_exploration_type(ExplorationType.MEAN), torch.no_grad(): eval_rollout = test_env.rollout( @@ -312,7 +315,10 @@ def env_factory(num_workers): eval_reward = eval_rollout["next", "reward"].sum(-2).mean().item() rewards_eval.append((i, eval_reward)) eval_str = f"eval cumulative reward: {rewards_eval[-1][1]: 4.4f} (init: {rewards_eval[0][1]: 4.4f})" - logger.log_scalar("test_reward", rewards_eval[-1][1], step=collected_frames) + if logger is not None: + logger.log_scalar( + "test_reward", rewards_eval[-1][1], step=collected_frames + ) if len(rewards_eval): pbar.set_description( f"reward: {rewards[-1][1]: 4.4f} (r0 = {r0: 4.4f})," + eval_str diff --git a/examples/multiagent/utils/logging.py b/examples/multiagent/utils/logging.py index 03276329422..352d0addc51 100644 --- a/examples/multiagent/utils/logging.py +++ b/examples/multiagent/utils/logging.py @@ -6,7 +6,6 @@ import numpy as np import torch -import wandb from tensordict import TensorDictBase from torchrl.envs.libs.vmas import VmasEnv from torchrl.record.loggers import generate_exp_name, get_logger, Logger @@ -134,6 +133,8 @@ def log_evaluation( ).unsqueeze(0) if isinstance(logger, WandbLogger): + import wandb + logger.experiment.log(to_log, commit=False) logger.experiment.log( { diff --git a/test/conftest.py b/test/conftest.py index c5cfdd680e7..048b9e6c49e 100644 --- a/test/conftest.py +++ b/test/conftest.py @@ -54,7 +54,7 @@ def fin(): request.addfinalizer(fin) -@pytest.fixture(autouse=True) +@pytest.fixture(scope="session", autouse=True) def set_warnings() -> None: warnings.filterwarnings( "ignore", @@ -66,3 +66,23 @@ def set_warnings() -> None: category=UserWarning, message=r"Couldn't cast the policy onto the desired device on remote process", ) + warnings.filterwarnings( + "ignore", + category=DeprecationWarning, + message=r"Deprecated call to `pkg_resources.declare_namespace", + ) + warnings.filterwarnings( + "ignore", + category=DeprecationWarning, + message=r"Using or importing the ABCs", + ) + warnings.filterwarnings( + "ignore", + category=DeprecationWarning, + message=r"Please use `coo_matrix` from the `scipy.sparse` namespace", + ) + warnings.filterwarnings( + "ignore", + category=DeprecationWarning, + message=r"jax.tree_util.register_keypaths is deprecated|jax.ShapedArray is deprecated", + ) diff --git a/test/test_actors.py b/test/test_actors.py index 3cbb6d48525..91d7c79bf81 100644 --- a/test/test_actors.py +++ b/test/test_actors.py @@ -773,7 +773,7 @@ def test_lmhead_actorvalueoperator(device): from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("gpt2", return_dict=False) - aco = LMHeadActorValueOperator(base_model) + aco = LMHeadActorValueOperator(base_model).to(device) # check common assert aco.module[0][0].module is base_model.transformer @@ -800,7 +800,8 @@ def test_lmhead_actorvalueoperator(device): batch_size=[ 4, ], - ).to(device) + device=device, + ) td_total = aco(td.clone()) policy_op = aco.get_policy_operator() td_policy = policy_op(td.clone()) diff --git a/test/test_cost.py b/test/test_cost.py index aa1ae5d245d..62f8a123792 100644 --- a/test/test_cost.py +++ b/test/test_cost.py @@ -13,6 +13,8 @@ from dataclasses import asdict, dataclass from packaging import version as pack_version +from tensordict._tensordict import unravel_keys + from tensordict.nn import ( InteractionType, ProbabilisticTensorDictModule, @@ -70,7 +72,11 @@ SafeSequential, WorldModelWrapper, ) -from torchrl.modules.distributions.continuous import NormalParamWrapper, TanhNormal +from torchrl.modules.distributions.continuous import ( + NormalParamWrapper, + TanhDelta, + TanhNormal, +) from torchrl.modules.models.model_based import ( DreamerActor, ObsDecoder, @@ -99,8 +105,10 @@ DreamerActorLoss, DreamerModelLoss, DreamerValueLoss, + DTLoss, IQLLoss, KLPENPPOLoss, + OnlineDTLoss, PPOLoss, QMixerLoss, SACLoss, @@ -164,6 +172,12 @@ def get_devices(): class LossModuleTestBase: + def _flatten_in_keys(self, in_keys): + return [ + in_key if isinstance(in_key, str) else "_".join(list(unravel_keys(in_key))) + for in_key in in_keys + ] + def tensordict_keys_test(self, loss_fn, default_keys, td_est=None): self.tensordict_keys_unknown_key_test(loss_fn) self.tensordict_keys_default_values_test(loss_fn, default_keys) @@ -6724,6 +6738,358 @@ def test_dreamer_value_tensordict_keys(self, device): self.tensordict_keys_test(loss_fn, default_keys=default_keys) +class TestOnlineDT(LossModuleTestBase): + seed = 0 + + def _create_mock_actor(self, batch=2, obs_dim=3, action_dim=4, device="cpu"): + # Actor + action_spec = BoundedTensorSpec( + -torch.ones(action_dim), torch.ones(action_dim), (action_dim,) + ) + net = NormalParamWrapper(nn.Linear(obs_dim, 2 * action_dim)) + module = TensorDictModule( + net, in_keys=["observation"], out_keys=["loc", "scale"] + ) + actor = ProbabilisticActor( + module=module, + distribution_class=TanhNormal, + in_keys=["loc", "scale"], + spec=action_spec, + ) + return actor.to(device) + + def _create_mock_data_odt(self, batch=2, obs_dim=3, action_dim=4, device="cpu"): + # create a tensordict + obs = torch.randn(batch, obs_dim, device=device) + action = torch.randn(batch, action_dim, device=device).clamp(-1, 1) + reward2go = torch.randn(batch, 1, device=device) + td = TensorDict( + batch_size=(batch,), + source={ + "observation": obs, + "action": action, + "reward2go": reward2go, + }, + device=device, + ) + return td + + def _create_seq_mock_data_odt( + self, batch=2, T=4, obs_dim=3, action_dim=4, device="cpu" + ): + # create a tensordict + obs = torch.randn(batch, T, obs_dim, device=device) + action = torch.randn(batch, T, action_dim, device=device).clamp(-1, 1) + reward2go = torch.randn(batch, T, 1, device=device) + + td = TensorDict( + batch_size=(batch, T), + source={ + "observation": obs, + "reward": reward2go, + "action": action, + }, + device=device, + ) + return td + + @pytest.mark.parametrize("device", get_available_devices()) + def test_odt(self, device): + torch.manual_seed(self.seed) + td = self._create_mock_data_odt(device=device) + + actor = self._create_mock_actor(device=device) + + loss_fn = OnlineDTLoss(actor) + loss = loss_fn(td) + loss_transformer = sum( + loss[key] + for key in loss.keys() + if key.startswith("loss") and key != "loss_alpha" + ) + loss_alpha = loss["loss_alpha"] + loss_transformer.backward(retain_graph=True) + named_parameters = loss_fn.named_parameters() + + for name, p in named_parameters: + if p.grad is not None and p.grad.norm() > 0.0: + assert "actor" in name + assert "alpha" not in name + if p.grad is None: + assert "actor" not in name + assert "alpha" in name + loss_fn.zero_grad() + loss_alpha.backward(retain_graph=True) + named_parameters = loss_fn.named_parameters() + for name, p in named_parameters: + if p.grad is not None and p.grad.norm() > 0.0: + assert "actor" not in name + assert "alpha" in name + if p.grad is None: + assert "actor" in name + assert "alpha" not in name + loss_fn.zero_grad() + + sum([loss_transformer, loss_alpha]).backward() + named_parameters = list(loss_fn.named_parameters()) + named_buffers = list(loss_fn.named_buffers()) + + assert len({p for n, p in named_parameters}) == len(list(named_parameters)) + assert len({p for n, p in named_buffers}) == len(list(named_buffers)) + + for name, p in named_parameters: + assert p.grad.norm() > 0.0, f"parameter {name} has a null gradient" + + @pytest.mark.parametrize("device", get_available_devices()) + def test_seq_odt(self, device): + torch.manual_seed(self.seed) + td = self._create_seq_mock_data_odt(device=device) + + actor = self._create_mock_actor(device=device) + + loss_fn = OnlineDTLoss(actor) + loss = loss_fn(td) + loss_transformer = sum( + loss[key] + for key in loss.keys() + if key.startswith("loss") and key != "loss_alpha" + ) + loss_alpha = loss["loss_alpha"] + loss_transformer.backward(retain_graph=True) + named_parameters = loss_fn.named_parameters() + + for name, p in named_parameters: + if p.grad is not None and p.grad.norm() > 0.0: + assert "actor" in name + assert "alpha" not in name + if p.grad is None: + assert "actor" not in name + assert "alpha" in name + loss_fn.zero_grad() + loss_alpha.backward(retain_graph=True) + named_parameters = loss_fn.named_parameters() + for name, p in named_parameters: + if p.grad is not None and p.grad.norm() > 0.0: + assert "actor" not in name + assert "alpha" in name + if p.grad is None: + assert "actor" in name + assert "alpha" not in name + loss_fn.zero_grad() + + sum([loss_transformer, loss_alpha]).backward() + named_parameters = list(loss_fn.named_parameters()) + named_buffers = list(loss_fn.named_buffers()) + + assert len({p for n, p in named_parameters}) == len(list(named_parameters)) + assert len({p for n, p in named_buffers}) == len(list(named_buffers)) + + for name, p in named_parameters: + assert p.grad.norm() > 0.0, f"parameter {name} has a null gradient" + + def test_onlinedt_tensordict_keys(self): + actor = self._create_mock_actor() + loss_fn = OnlineDTLoss(actor) + + default_keys = { + "action": "action", + } + + self.tensordict_keys_test( + loss_fn, + default_keys=default_keys, + ) + + @pytest.mark.parametrize("device", get_default_devices()) + def test_onlinedt_notensordict(self, device): + torch.manual_seed(self.seed) + actor = self._create_mock_actor(device=device) + td = self._create_mock_data_odt(device=device) + loss_fn = OnlineDTLoss(actor) + + in_keys = self._flatten_in_keys(loss_fn.in_keys) + kwargs = dict(td.flatten_keys("_").select(*in_keys)) + + torch.manual_seed(0) + loss_val_td = loss_fn(td) + torch.manual_seed(0) + loss_log_likelihood, loss_entropy, loss_alpha, alpha, entropy = loss_fn( + **kwargs + ) + torch.testing.assert_close( + loss_val_td.get("loss_log_likelihood"), loss_log_likelihood + ) + torch.testing.assert_close(loss_val_td.get("loss_entropy"), loss_entropy) + torch.testing.assert_close(loss_val_td.get("loss_alpha"), loss_alpha) + # test select + torch.manual_seed(0) + loss_fn.select_out_keys("loss_entropy") + if torch.__version__ >= "2.0.0": + loss_entropy = loss_fn(**kwargs) + else: + with pytest.raises( + RuntimeError, + match="You are likely using tensordict.nn.dispatch with keyword arguments", + ): + loss_entropy = loss_fn(**kwargs) + return + assert loss_entropy == loss_val_td["loss_entropy"] + + +class TestDT(LossModuleTestBase): + seed = 0 + + def _create_mock_actor(self, batch=2, obs_dim=3, action_dim=4, device="cpu"): + # Actor + action_spec = BoundedTensorSpec( + -torch.ones(action_dim), torch.ones(action_dim), (action_dim,) + ) + net = NormalParamWrapper(nn.Linear(obs_dim, 2 * action_dim)) + module = TensorDictModule(net, in_keys=["observation"], out_keys=["param"]) + actor = ProbabilisticActor( + module=module, + distribution_class=TanhDelta, + in_keys=["param"], + spec=action_spec, + ) + return actor.to(device) + + def _create_mock_data_dt(self, batch=2, obs_dim=3, action_dim=4, device="cpu"): + # create a tensordict + obs = torch.randn(batch, obs_dim, device=device) + action = torch.randn(batch, action_dim, device=device).clamp(-1, 1) + reward2go = torch.randn(batch, 1, device=device) + td = TensorDict( + batch_size=(batch,), + source={ + "observation": obs, + "action": action, + }, + device=device, + ) + return td + + def _create_seq_mock_data_dt( + self, batch=2, T=4, obs_dim=3, action_dim=4, device="cpu" + ): + # create a tensordict + obs = torch.randn(batch, T, obs_dim, device=device) + action = torch.randn(batch, T, action_dim, device=device).clamp(-1, 1) + + td = TensorDict( + batch_size=(batch, T), + source={ + "observation": obs, + "action": action, + }, + device=device, + ) + return td + + def test_dt_tensordict_keys(self): + actor = self._create_mock_actor() + loss_fn = DTLoss(actor) + + default_keys = { + "action": "action", + } + + self.tensordict_keys_test( + loss_fn, + default_keys=default_keys, + ) + + @pytest.mark.parametrize("device", get_default_devices()) + def test_dt_notensordict(self, device): + torch.manual_seed(self.seed) + actor = self._create_mock_actor(device=device) + td = self._create_mock_data_dt(device=device) + loss_fn = DTLoss(actor) + + in_keys = self._flatten_in_keys(loss_fn.in_keys) + kwargs = dict(td.flatten_keys("_").select(*in_keys)) + + loss_val_td = loss_fn(td) + loss_val = loss_fn(**kwargs) + torch.testing.assert_close(loss_val_td.get("loss"), loss_val) + # test select + loss_fn.select_out_keys("loss") + if torch.__version__ >= "2.0.0": + loss_actor = loss_fn(**kwargs) + else: + with pytest.raises( + RuntimeError, + match="You are likely using tensordict.nn.dispatch with keyword arguments", + ): + loss_actor = loss_fn(**kwargs) + return + assert loss_actor == loss_val_td["loss"] + + @pytest.mark.parametrize("device", get_available_devices()) + def test_dt(self, device): + torch.manual_seed(self.seed) + td = self._create_mock_data_dt(device=device) + + actor = self._create_mock_actor(device=device) + + loss_fn = DTLoss(actor) + loss = loss_fn(td) + loss_transformer = loss["loss"] + loss_transformer.backward(retain_graph=True) + named_parameters = loss_fn.named_parameters() + + for name, p in named_parameters: + if p.grad is not None and p.grad.norm() > 0.0: + assert "actor" in name + assert "alpha" not in name + if p.grad is None: + assert "actor" not in name + assert "alpha" in name + loss_fn.zero_grad() + + sum([loss_transformer]).backward() + named_parameters = list(loss_fn.named_parameters()) + named_buffers = list(loss_fn.named_buffers()) + + assert len({p for n, p in named_parameters}) == len(list(named_parameters)) + assert len({p for n, p in named_buffers}) == len(list(named_buffers)) + + for name, p in named_parameters: + assert p.grad.norm() > 0.0, f"parameter {name} has a null gradient" + + @pytest.mark.parametrize("device", get_available_devices()) + def test_seq_dt(self, device): + torch.manual_seed(self.seed) + td = self._create_seq_mock_data_dt(device=device) + + actor = self._create_mock_actor(device=device) + + loss_fn = DTLoss(actor) + loss = loss_fn(td) + loss_transformer = loss["loss"] + loss_transformer.backward(retain_graph=True) + named_parameters = loss_fn.named_parameters() + + for name, p in named_parameters: + if p.grad is not None and p.grad.norm() > 0.0: + assert "actor" in name + assert "alpha" not in name + if p.grad is None: + assert "actor" not in name + assert "alpha" in name + loss_fn.zero_grad() + + sum([loss_transformer]).backward() + named_parameters = list(loss_fn.named_parameters()) + named_buffers = list(loss_fn.named_buffers()) + + assert len({p for n, p in named_parameters}) == len(list(named_parameters)) + assert len({p for n, p in named_buffers}) == len(list(named_buffers)) + + for name, p in named_parameters: + assert p.grad.norm() > 0.0, f"parameter {name} has a null gradient" + + @pytest.mark.skipif( not _has_functorch, reason=f"functorch not installed: {FUNCTORCH_ERR}" ) diff --git a/test/test_modules.py b/test/test_modules.py index caa4cca1c9b..76d8b3a5be0 100644 --- a/test/test_modules.py +++ b/test/test_modules.py @@ -16,8 +16,10 @@ from torchrl.data.tensor_specs import BoundedTensorSpec, CompositeSpec from torchrl.modules import ( CEMPlanner, + DTActor, LSTMNet, MultiAgentMLP, + OnlineDTActor, QMixer, SafeModule, TanhModule, @@ -26,6 +28,10 @@ ) from torchrl.modules.distributions.utils import safeatanh, safetanh from torchrl.modules.models import ConvNet, MLP, NoisyLazyLinear, NoisyLinear +from torchrl.modules.models.decision_transformer import ( + _has_transformers, + DecisionTransformer, +) from torchrl.modules.models.model_based import ( DreamerActor, ObsDecoder, @@ -952,6 +958,74 @@ def test_tanh_atanh(use_vmap, scale): torch.testing.assert_close(x.grad, torch.ones_like(x)) +@pytest.mark.skipif( + not _has_transformers, reason="transformers needed for TestDecisionTransformer" +) +class TestDecisionTransformer: + def test_init(self): + DecisionTransformer( + 3, + 4, + ) + with pytest.raises(TypeError): + DecisionTransformer(3, 4, config="some_str") + DecisionTransformer( + 3, + 4, + config=DecisionTransformer.DTConfig( + n_layer=2, n_embd=16, n_positions=16, n_inner=16, n_head=2 + ), + ) + + @pytest.mark.parametrize("batch_dims", [[], [3], [3, 4]]) + def test_exec(self, batch_dims, T=5): + observations = torch.randn(*batch_dims, T, 3) + actions = torch.randn(*batch_dims, T, 4) + r2go = torch.randn(*batch_dims, T, 1) + model = DecisionTransformer( + 3, + 4, + config=DecisionTransformer.DTConfig( + n_layer=2, n_embd=16, n_positions=16, n_inner=16, n_head=2 + ), + ) + out = model(observations, actions, r2go) + assert out.shape == torch.Size([*batch_dims, T, 16]) + + @pytest.mark.parametrize("batch_dims", [[], [3], [3, 4]]) + def test_dtactor(self, batch_dims, T=5): + dtactor = DTActor( + 3, + 4, + transformer_config=DecisionTransformer.DTConfig( + n_layer=2, n_embd=16, n_positions=16, n_inner=16, n_head=2 + ), + ) + observations = torch.randn(*batch_dims, T, 3) + actions = torch.randn(*batch_dims, T, 4) + r2go = torch.randn(*batch_dims, T, 1) + out = dtactor(observations, actions, r2go) + assert out.shape == torch.Size([*batch_dims, T, 4]) + + @pytest.mark.parametrize("batch_dims", [[], [3], [3, 4]]) + def test_onlinedtactor(self, batch_dims, T=5): + dtactor = OnlineDTActor( + 3, + 4, + transformer_config=DecisionTransformer.DTConfig( + n_layer=2, n_embd=16, n_positions=16, n_inner=16, n_head=2 + ), + ) + observations = torch.randn(*batch_dims, T, 3) + actions = torch.randn(*batch_dims, T, 4) + r2go = torch.randn(*batch_dims, T, 1) + mu, sig = dtactor(observations, actions, r2go) + assert mu.shape == torch.Size([*batch_dims, T, 4]) + assert sig.shape == torch.Size([*batch_dims, T, 4]) + assert (dtactor.log_std_min < sig.log()).all() + assert (dtactor.log_std_max > sig.log()).all() + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/test/test_tensordictmodules.py b/test/test_tensordictmodules.py index c3f30f05fb3..a9134dd5ce7 100644 --- a/test/test_tensordictmodules.py +++ b/test/test_tensordictmodules.py @@ -18,12 +18,18 @@ from torchrl.envs.utils import set_exploration_type, step_mdp from torchrl.modules import ( AdditiveGaussianWrapper, + DecisionTransformerInferenceWrapper, + DTActor, LSTMModule, NormalParamWrapper, + OnlineDTActor, + ProbabilisticActor, SafeModule, + TanhDelta, TanhNormal, ValueOperator, ) +from torchrl.modules.models.decision_transformer import _has_transformers from torchrl.modules.tensordict_module.common import ( ensure_tensordict_compatible, is_tensordict_compatible, @@ -1809,6 +1815,73 @@ def test_vmapmodule(): assert (sample_in_td["x"][:, 0] == sample_in_td["y"]).all() +@pytest.mark.skipif( + not _has_transformers, reason="transformers needed to test DT classes" +) +class TestDecisionTransformerInferenceWrapper: + @pytest.mark.parametrize("online", [True, False]) + def test_dt_inference_wrapper(self, online): + action_key = ("nested", ("action",)) + if online: + dtactor = OnlineDTActor( + state_dim=4, action_dim=2, transformer_config=DTActor.default_config() + ) + in_keys = ["loc", "scale"] + actor_module = TensorDictModule( + dtactor, + in_keys=["observation", action_key, "return_to_go"], + out_keys=in_keys, + ) + dist_class = TanhNormal + else: + dtactor = DTActor( + state_dim=4, action_dim=2, transformer_config=DTActor.default_config() + ) + in_keys = ["param"] + actor_module = TensorDictModule( + dtactor, + in_keys=["observation", action_key, "return_to_go"], + out_keys=in_keys, + ) + dist_class = TanhDelta + dist_kwargs = { + "min": -1.0, + "max": 1.0, + } + actor = ProbabilisticActor( + in_keys=in_keys, + out_keys=[action_key], + module=actor_module, + distribution_class=dist_class, + distribution_kwargs=dist_kwargs, + ) + inference_actor = DecisionTransformerInferenceWrapper(actor) + sequence_length = 20 + td = TensorDict( + { + "observation": torch.randn(1, sequence_length, 4), + action_key: torch.randn(1, sequence_length, 2), + "return_to_go": torch.randn(1, sequence_length, 1), + }, + [1], + ) + with pytest.raises( + ValueError, + match="The action key action was not found in the policy out_keys", + ): + result = inference_actor(td) + inference_actor.set_tensor_keys(action=action_key) + result = inference_actor(td) + # checks that the seq length has disappeared + assert result.get(action_key).shape == torch.Size([1, 2]) + assert inference_actor.out_keys == unravel_key_list( + sorted([action_key, *in_keys, "observation", "return_to_go"], key=str) + ) + assert set(result.keys(True, True)) - set(td.keys(True, True)) == set( + inference_actor.out_keys + ) - set(inference_actor.in_keys) + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/torchrl/data/datasets/d4rl.py b/torchrl/data/datasets/d4rl.py index cd199eb8acc..3c0e1bb8b60 100644 --- a/torchrl/data/datasets/d4rl.py +++ b/torchrl/data/datasets/d4rl.py @@ -136,6 +136,8 @@ def __init__( if split_trajs: dataset = split_trajectories(dataset) + dataset["next", "done"][:, -1] = True + storage = LazyMemmapStorage(dataset.shape[0]) super().__init__( batch_size=batch_size, @@ -260,6 +262,7 @@ def _get_dataset_from_env(self, name, env_kwargs): ) else: dataset.set("done", dataset.get("terminal")) + dataset.rename_key("rewards", "reward") dataset.rename_key("actions", "action") try: diff --git a/torchrl/envs/common.py b/torchrl/envs/common.py index d3871c09ed5..bec19f3de7b 100644 --- a/torchrl/envs/common.py +++ b/torchrl/envs/common.py @@ -1249,7 +1249,7 @@ def policy(td): tensordict = step_mdp( tensordict, keep_other=True, - exclude_action=True, + exclude_action=False, exclude_reward=True, reward_key=self.reward_key, action_key=self.action_key, diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index 268a2e258a7..4687884834e 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -1158,6 +1158,7 @@ def _call(self, tensordict: TensorDict) -> TensorDict: return tensordict def _step(self, tensordict: TensorDictBase) -> TensorDictBase: + # sets the current root target as next target return for out_key in self.out_keys: tensordict.set(("next", out_key), tensordict.get(out_key)) return super()._step(tensordict) @@ -1166,9 +1167,18 @@ def _apply_transform( self, reward: torch.Tensor, target_return: torch.Tensor ) -> torch.Tensor: if self.mode == "reduce": - target_return = target_return - reward + if reward.ndim == 1 and target_return.ndim == 2: + # if target is stacked + target_return = target_return[-1] - reward + else: + target_return = target_return - reward return target_return elif self.mode == "constant": + if reward.ndim == 1 and target_return.ndim == 2: + # if target is stacked + target_return = target_return[-1] + else: + target_return = target_return return target_return else: raise ValueError("Unknown mode: {}".format(self.mode)) @@ -1185,15 +1195,15 @@ def transform_observation_spec( raise ValueError( f"observation_spec was expected to be of type CompositeSpec. Got {type(observation_spec)} instead." ) - - target_return_spec = BoundedTensorSpec( - minimum=-float("inf"), - maximum=self.target_return, - shape=self.parent.reward_spec.shape, - dtype=self.parent.reward_spec.dtype, - device=self.parent.reward_spec.device, - ) - observation_spec[self.out_keys[0]] = target_return_spec + for key in self.out_keys: + target_return_spec = BoundedTensorSpec( + minimum=-float("inf"), + maximum=self.target_return, + shape=self.parent.reward_spec.shape, + dtype=self.parent.reward_spec.dtype, + device=self.parent.reward_spec.device, + ) + observation_spec[key] = target_return_spec return observation_spec @@ -1669,15 +1679,15 @@ class ObservationNorm(ObservationTransform): Args: loc (number or tensor): location of the affine transform scale (number or tensor): scale of the affine transform - in_keys (seuqence of NestedKey, optional): entries to be normalized. Defaults to ["observation", "pixels"]. + in_keys (sequence of NestedKey, optional): entries to be normalized. Defaults to ["observation", "pixels"]. All entries will be normalized with the same values: if a different behaviour is desired (e.g. a different normalization for pixels and states) different :obj:`ObservationNorm` objects should be used. - out_keys (seuqence of NestedKey, optional): output entries. Defaults to the value of `in_keys`. - in_keys_inv (seuqence of NestedKey, optional): ObservationNorm also supports inverse transforms. This will + out_keys (sequence of NestedKey, optional): output entries. Defaults to the value of `in_keys`. + in_keys_inv (sequence of NestedKey, optional): ObservationNorm also supports inverse transforms. This will only occur if a list of keys is provided to :obj:`in_keys_inv`. If none is provided, only the forward transform will be called. - out_keys_inv (seuqence of NestedKey, optional): output entries for the inverse transform. + out_keys_inv (sequence of NestedKey, optional): output entries for the inverse transform. Defaults to the value of `in_keys_inv`. standard_normal (bool, optional): if ``True``, the transform will be @@ -1949,9 +1959,9 @@ class CatFrames(ObservationTransform): dim (int): dimension along which concatenate the observations. Should be negative, to ensure that it is compatible with environments of different batch_size. - in_keys (seuqence of NestedKey, optional): keys pointing to the frames that have + in_keys (sequence of NestedKey, optional): keys pointing to the frames that have to be concatenated. Defaults to ["pixels"]. - out_keys (seuqence of NestedKey, optional): keys pointing to where the output + out_keys (sequence of NestedKey, optional): keys pointing to where the output has to be written. Defaults to the value of `in_keys`. padding (str, optional): the padding method. One of ``"same"`` or ``"zeros"``. Defaults to ``"same"``, ie. the first value is uesd for padding. @@ -4597,10 +4607,7 @@ def _inv_call(self, tensordict: TensorDictBase) -> TensorDictBase: item = self._inv_apply_transform( tensordict.get(in_key), done_or_truncated ) - tensordict.set( - out_key, - item, - ) + tensordict.set(out_key, item) if not found: raise KeyError(f"Could not find any of the input keys {self.in_keys}.") return tensordict diff --git a/torchrl/modules/__init__.py b/torchrl/modules/__init__.py index ebb73bcedf6..a74a598be59 100644 --- a/torchrl/modules/__init__.py +++ b/torchrl/modules/__init__.py @@ -20,8 +20,10 @@ DdpgCnnQNet, DdpgMlpActor, DdpgMlpQNet, + DecisionTransformer, DistributionalDQNnet, DreamerActor, + DTActor, DuelingCnnDQNet, LSTMNet, MLP, @@ -30,6 +32,7 @@ NoisyLinear, ObsDecoder, ObsEncoder, + OnlineDTActor, QMixer, reset_noise, RSSMPosterior, @@ -44,6 +47,7 @@ ActorCriticWrapper, ActorValueOperator, AdditiveGaussianWrapper, + DecisionTransformerInferenceWrapper, DistributionalQValueActor, DistributionalQValueHook, DistributionalQValueModule, diff --git a/torchrl/modules/distributions/utils.py b/torchrl/modules/distributions/utils.py index 3fc64b4c03f..267632c4fd9 100644 --- a/torchrl/modules/distributions/utils.py +++ b/torchrl/modules/distributions/utils.py @@ -46,7 +46,7 @@ def __init__(self, base_distribution, transforms, validate_args=None): transforms, ] elif isinstance(transforms, list): - raise ValueError("Mae a ComposeTransform first.") + raise ValueError("Make a ComposeTransform first.") else: raise ValueError( "transforms must be a Transform or list, but was {}".format(transforms) diff --git a/torchrl/modules/models/__init__.py b/torchrl/modules/models/__init__.py index 8e5d0c2f9c9..9b8dfd5b893 100644 --- a/torchrl/modules/models/__init__.py +++ b/torchrl/modules/models/__init__.py @@ -4,6 +4,7 @@ # LICENSE file in the root directory of this source tree. +from .decision_transformer import DecisionTransformer from .exploration import NoisyLazyLinear, NoisyLinear, reset_noise from .model_based import DreamerActor, ObsDecoder, ObsEncoder, RSSMPosterior, RSSMPrior from .models import ( @@ -13,9 +14,11 @@ DdpgMlpActor, DdpgMlpQNet, DistributionalDQNnet, + DTActor, DuelingCnnDQNet, LSTMNet, MLP, + OnlineDTActor, ) from .multiagent import MultiAgentMLP, QMixer, VDNMixer from .utils import Squeeze2dLayer, SqueezeLayer diff --git a/torchrl/modules/models/decision_transformer.py b/torchrl/modules/models/decision_transformer.py new file mode 100644 index 00000000000..8eb72f1f9ea --- /dev/null +++ b/torchrl/modules/models/decision_transformer.py @@ -0,0 +1,182 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. +from __future__ import annotations + +import dataclasses + +import importlib +from dataclasses import dataclass +from typing import Any + +import torch +import torch.nn as nn + +_has_transformers = importlib.util.find_spec("transformers") is not None + + +class DecisionTransformer(nn.Module): + """Online Decion Transformer. + + Desdescribed in https://arxiv.org/abs/2202.05607 . + + The transformer utilizes a default config to create the GPT2 model if the user does not provide a specific config. + default_config = { + ... "n_embd": 256, + ... "n_layer": 4, + ... "n_head": 4, + ... "n_inner": 1024, + ... "activation": "relu", + ... "n_positions": 1024, + ... "resid_pdrop": 0.1, + ... "attn_pdrop": 0.1, + } + + Args: + state_dim (int): dimension of the state space + action_dim (int): dimension of the action space + config (:obj:`~.DTConfig` or dict, optional): transformer architecture configuration, + used to create the GPT2Config from transformers. + Defaults to :obj:`~.default_config`. + + + Example: + >>> config = DecisionTransformer.default_config() + >>> config.n_embd = 128 + >>> print(config) + DTConfig(n_embd: 128, n_layer: 4, n_head: 4, n_inner: 1024, activation: relu, n_positions: 1024, resid_pdrop: 0.1, attn_pdrop: 0.1) + >>> # alternatively + >>> config = DecisionTransformer.DTConfig(n_embd=128) + >>> model = DecisionTransformer(state_dim=4, action_dim=2, config=config) + >>> batch_size = [3, 32] + >>> length = 10 + >>> observation = torch.randn(*batch_size, length, 4) + >>> action = torch.randn(*batch_size, length, 2) + >>> return_to_go = torch.randn(*batch_size, length, 1) + >>> output = model(observation, action, return_to_go) + >>> output.shape + torch.Size([3, 32, 10, 128]) + + """ + + @dataclass + class DTConfig: + """Default configuration for DecisionTransformer.""" + + n_embd: Any = 256 + n_layer: Any = 4 + n_head: Any = 4 + n_inner: Any = 1024 + activation: Any = "relu" + n_positions: Any = 1024 + resid_pdrop: Any = 0.1 + attn_pdrop: Any = 0.1 + + def __repr__(self): + fields = [] + for f in dataclasses.fields(self): + value = getattr(self, f.name) + fields.append(f"{f.name}: {value}") + fields = ", ".join(fields) + return f"{self.__class__.__name__}({fields})" + + @classmethod + def default_config(cls): + return cls.DTConfig() + + def __init__( + self, + state_dim, + action_dim, + config: dict | DTConfig = None, + ): + if not _has_transformers: + raise ImportError( + "transformers is not installed. Please install it with `pip install transformers`." + ) + import transformers + from transformers.models.gpt2.modeling_gpt2 import GPT2Model + + if config is None: + config = self.default_config() + if isinstance(config, self.DTConfig): + config = dataclasses.asdict(config) + if not isinstance(config, dict): + try: + config = dict(config) + except Exception as err: + raise TypeError( + f"Config of type {type(config)} is not supported." + ) from err + + super(DecisionTransformer, self).__init__() + + gpt_config = transformers.GPT2Config( + n_embd=config["n_embd"], + n_layer=config["n_layer"], + n_head=config["n_head"], + n_inner=config["n_inner"], + activation_function=config["activation"], + n_positions=config["n_positions"], + resid_pdrop=config["resid_pdrop"], + attn_pdrop=config["attn_pdrop"], + vocab_size=1, + ) + self.state_dim = state_dim + self.action_dim = action_dim + self.hidden_size = config["n_embd"] + + self.transformer = GPT2Model(config=gpt_config) + + self.embed_return = torch.nn.Linear(1, self.hidden_size) + self.embed_state = torch.nn.Linear(self.state_dim, self.hidden_size) + self.embed_action = torch.nn.Linear(self.action_dim, self.hidden_size) + + self.embed_ln = nn.LayerNorm(self.hidden_size) + + def forward( + self, + observation: torch.Tensor, + action: torch.Tensor, + return_to_go: torch.Tensor, + ): + batch_size, seq_length = observation.shape[:-2], observation.shape[-2] + batch_size_orig = batch_size + if len(batch_size) != 1: + # TODO: vmap over transformer once this is possible + observation = observation.view(-1, *observation.shape[-2:]) + action = action.view(-1, *action.shape[-2:]) + return_to_go = return_to_go.view(-1, *return_to_go.shape[-2:]) + batch_size = torch.Size([batch_size.numel()]) + + # embed each modality with a different head + state_embeddings = self.embed_state(observation) + action_embeddings = self.embed_action(action) + returns_embeddings = self.embed_return(return_to_go) + + # this makes the sequence look like (R_1, s_1, a_1, R_2, s_2, a_2, ...) + # which works nice in an autoregressive sense since states predict actions + stacked_inputs = ( + torch.stack( + (returns_embeddings, state_embeddings, action_embeddings), dim=-3 + ) + .permute(*range(len(batch_size)), -2, -3, -1) + .reshape(*batch_size, 3 * seq_length, self.hidden_size) + ) + stacked_inputs = self.embed_ln(stacked_inputs) + + # we feed in the input embeddings (not word indices as in NLP) to the model + transformer_outputs = self.transformer( + inputs_embeds=stacked_inputs, + ) + x = transformer_outputs["last_hidden_state"] + + # reshape x so that the second dimension corresponds to the original + # returns (0), states (1), or actions (2); i.e. x[:,1,t] is the token for s_t + x = x.reshape(*batch_size, seq_length, 3, self.hidden_size).permute( + *range(len(batch_size)), -2, -3, -1 + ) + if batch_size_orig is batch_size: + return x[..., 1, :, :] # only state tokens + return x[..., 1, :, :].view(*batch_size_orig, *x.shape[-2:]) diff --git a/torchrl/modules/models/models.py b/torchrl/modules/models/models.py index a72af43aa13..ba6344f3f03 100644 --- a/torchrl/modules/models/models.py +++ b/torchrl/modules/models/models.py @@ -2,6 +2,10 @@ # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. +from __future__ import annotations + +import dataclasses + import warnings from numbers import Number from typing import Dict, List, Optional, Sequence, Tuple, Type, Union @@ -13,6 +17,7 @@ from torchrl._utils import prod from torchrl.data.utils import DEVICE_TYPING +from torchrl.modules.models.decision_transformer import DecisionTransformer from torchrl.modules.models.utils import ( _find_depth, create_on_device, @@ -1135,6 +1140,184 @@ def forward( hidden0_in: Optional[torch.Tensor] = None, hidden1_in: Optional[torch.Tensor] = None, ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]: - input = self.mlp(input) return self._lstm(input, hidden0_in, hidden1_in) + + +class OnlineDTActor(nn.Module): + """Online Decision Transformer Actor class. + + Actor class for the Online Decision Transformer to sample actions from gaussian distribution as presented inresented in `"Online Decision Transformer" `. + Returns mu and sigma for the gaussian distribution to sample actions from. + + Args: + state_dim (int): state dimension. + action_dim (int): action dimension. + transformer_config (Dict or :class:`DecisionTransformer.DTConfig`): + config for the GPT2 transformer. + Defaults to :meth:`~.default_config`. + device (Optional[DEVICE_TYPING], optional): device to use. Defaults to None. + + Examples: + >>> model = OnlineDTActor(state_dim=4, action_dim=2, + ... transformer_config=OnlineDTActor.default_config()) + >>> observation = torch.randn(32, 10, 4) + >>> action = torch.randn(32, 10, 2) + >>> return_to_go = torch.randn(32, 10, 1) + >>> mu, std = model(observation, action, return_to_go) + >>> mu.shape + torch.Size([32, 10, 2]) + >>> std.shape + torch.Size([32, 10, 2]) + """ + + def __init__( + self, + state_dim: int, + action_dim: int, + transformer_config: Dict | DecisionTransformer.DTConfig = None, + device: Optional[DEVICE_TYPING] = None, + ): + super().__init__() + if transformer_config is None: + transformer_config = self.default_config() + if isinstance(transformer_config, DecisionTransformer.DTConfig): + transformer_config = dataclasses.asdict(transformer_config) + self.transformer = DecisionTransformer( + state_dim=state_dim, + action_dim=action_dim, + config=transformer_config, + ) + self.action_layer_mean = nn.Linear( + transformer_config["n_embd"], action_dim, device=device + ) + self.action_layer_logstd = nn.Linear( + transformer_config["n_embd"], action_dim, device=device + ) + + self.log_std_min, self.log_std_max = -5.0, 2.0 + + def weight_init(m): + """Custom weight init for Conv2D and Linear layers.""" + if isinstance(m, torch.nn.Linear): + nn.init.orthogonal_(m.weight.data) + if hasattr(m.bias, "data"): + m.bias.data.fill_(0.0) + + self.action_layer_mean.apply(weight_init) + self.action_layer_logstd.apply(weight_init) + + def forward( + self, + observation: torch.Tensor, + action: torch.Tensor, + return_to_go: torch.Tensor, + ) -> Tuple[torch.Tensor, torch.Tensor]: + hidden_state = self.transformer(observation, action, return_to_go) + mu = self.action_layer_mean(hidden_state) + log_std = self.action_layer_logstd(hidden_state) + + log_std = torch.tanh(log_std) + # log_std is the output of tanh so it will be between [-1, 1] + # map it to be between [log_std_min, log_std_max] + log_std = self.log_std_min + 0.5 * (self.log_std_max - self.log_std_min) * ( + log_std + 1.0 + ) + std = log_std.exp() + + return mu, std + + @classmethod + def default_config(cls): + """Default configuration for :class:`~.OnlineDTActor`.""" + return DecisionTransformer.DTConfig( + n_embd=512, + n_layer=4, + n_head=4, + n_inner=2048, + activation="relu", + n_positions=1024, + resid_pdrop=0.1, + attn_pdrop=0.1, + ) + + +class DTActor(nn.Module): + """Decision Transformer Actor class. + + Actor class for the Decision Transformer to output deterministic action as presented in `"Decision Transformer" `. + Returns the deterministic actions. + + Args: + state_dim (int): state dimension. + action_dim (int): action dimension. + transformer_config (Dict or :class:`DecisionTransformer.DTConfig`, optional): + config for the GPT2 transformer. + Defaults to :meth:`~.default_config`. + device (Optional[DEVICE_TYPING], optional): device to use. Defaults to None. + + Examples: + >>> model = DTActor(state_dim=4, action_dim=2, + ... transformer_config=DTActor.default_config()) + >>> observation = torch.randn(32, 10, 4) + >>> action = torch.randn(32, 10, 2) + >>> return_to_go = torch.randn(32, 10, 1) + >>> output = model(observation, action, return_to_go) + >>> output.shape + torch.Size([32, 10, 2]) + + """ + + def __init__( + self, + state_dim: int, + action_dim: int, + transformer_config: Dict | DecisionTransformer.DTConfig = None, + device: Optional[DEVICE_TYPING] = None, + ): + super().__init__() + if transformer_config is None: + transformer_config = self.default_config() + if isinstance(transformer_config, DecisionTransformer.DTConfig): + transformer_config = dataclasses.asdict(transformer_config) + self.transformer = DecisionTransformer( + state_dim=state_dim, + action_dim=action_dim, + config=transformer_config, + ) + self.action_layer = nn.Linear( + transformer_config["n_embd"], action_dim, device=device + ) + + def weight_init(m): + """Custom weight init for Conv2D and Linear layers.""" + if isinstance(m, torch.nn.Linear): + nn.init.orthogonal_(m.weight.data) + if hasattr(m.bias, "data"): + m.bias.data.fill_(0.0) + + self.action_layer.apply(weight_init) + + def forward( + self, + observation: torch.Tensor, + action: torch.Tensor, + return_to_go: torch.Tensor, + ) -> torch.Tensor: + hidden_state = self.transformer(observation, action, return_to_go) + out = self.action_layer(hidden_state) + return out + + @classmethod + def default_config(cls): + """Default configuration for :class:`~.DTActor`.""" + return DecisionTransformer.DTConfig( + n_embd=512, + n_layer=4, + n_head=4, + n_inner=2048, + activation="relu", + n_positions=1024, + resid_pdrop=0.1, + attn_pdrop=0.1, + ) diff --git a/torchrl/modules/tensordict_module/__init__.py b/torchrl/modules/tensordict_module/__init__.py index 98db8c87663..645c7b6f122 100644 --- a/torchrl/modules/tensordict_module/__init__.py +++ b/torchrl/modules/tensordict_module/__init__.py @@ -8,6 +8,7 @@ ActorCriticOperator, ActorCriticWrapper, ActorValueOperator, + DecisionTransformerInferenceWrapper, DistributionalQValueActor, DistributionalQValueHook, DistributionalQValueModule, diff --git a/torchrl/modules/tensordict_module/actors.py b/torchrl/modules/tensordict_module/actors.py index 4ae4c9a9de1..da719102179 100644 --- a/torchrl/modules/tensordict_module/actors.py +++ b/torchrl/modules/tensordict_module/actors.py @@ -7,7 +7,7 @@ import torch -from tensordict import TensorDictBase +from tensordict import TensorDictBase, unravel_key from tensordict.nn import ( dispatch, TensorDictModule, @@ -299,7 +299,6 @@ def __init__( in_keys: Optional[Sequence[NestedKey]] = None, out_keys: Optional[Sequence[NestedKey]] = None, ) -> None: - if in_keys is None: in_keys = ["observation"] if out_keys is None: @@ -1565,6 +1564,218 @@ def get_value_operator(self) -> SafeSequential: get_value_head = get_value_operator +class DecisionTransformerInferenceWrapper(TensorDictModuleWrapper): + """Inference Action Wrapper for the Decision Transformer. + + A wrapper specifically designed for the Decision Transformer, which will mask the + input tensordict sequences to the inferece context. + The output will be a TensorDict with the same keys as the input, but with only the last + action of the predicted action sequence and the last return to go. + + This module creates returns a modified copy of the tensordict, ie. it does + **not** modify the tensordict in-place. + + .. note:: If the action, observation or reward-to-go key is not standard, + the method :meth:`~.set_tensor_keys` should be used, e.g. + + >>> dt_inference_wrapper.set_tensor_keys(action="foo", observation="bar", return_to_go="baz") + + The in_keys are the observation, action and return-to-go keys. The out-keys + match the in-keys, with the addition of any other out-key from the policy + (eg., parameters of the distribution or hidden values). + + Args: + policy (TensorDictModule): The policy module that takes in + observations and produces an action value + + Keyword Args: + inference_context (int): The number of previous actions that will not be masked in the context. + For example for an observation input of shape [batch_size, context, obs_dim] with context=20 and inference_context=5, the first 15 entries + of the context will be masked. Defaults to 5. + spec (Optional[TensorSpec]): The spec of the input TensorDict. If None, it will be inferred from the policy module. + + Examples: + >>> import torch + >>> from tensordict import TensorDict + >>> from tensordict.nn import TensorDictModule + >>> from torchrl.modules import ( + ... ProbabilisticActor, + ... TanhDelta, + ... DTActor, + ... DecisionTransformerInferenceWrapper, + ... ) + >>> dtactor = DTActor(state_dim=4, action_dim=2, + ... transformer_config=DTActor.default_config() + ... ) + >>> actor_module = TensorDictModule( + ... dtactor, + ... in_keys=["observation", "action", "return_to_go"], + ... out_keys=["param"]) + >>> dist_class = TanhDelta + >>> dist_kwargs = { + ... "min": -1.0, + ... "max": 1.0, + ... } + >>> actor = ProbabilisticActor( + ... in_keys=["param"], + ... out_keys=["action"], + ... module=actor_module, + ... distribution_class=dist_class, + ... distribution_kwargs=dist_kwargs) + >>> inference_actor = DecisionTransformerInferenceWrapper(actor) + >>> sequence_length = 20 + >>> td = TensorDict({"observation": torch.randn(1, sequence_length, 4), + ... "action": torch.randn(1, sequence_length, 2), + ... "return_to_go": torch.randn(1, sequence_length, 1)}, [1,]) + >>> result = inference_actor(td) + >>> print(result) + TensorDict( + fields={ + action: Tensor(shape=torch.Size([1, 2]), device=cpu, dtype=torch.float32, is_shared=False), + observation: Tensor(shape=torch.Size([1, 20, 4]), device=cpu, dtype=torch.float32, is_shared=False), + param: Tensor(shape=torch.Size([1, 20, 2]), device=cpu, dtype=torch.float32, is_shared=False), + return_to_go: Tensor(shape=torch.Size([1, 1]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([1]), + device=None, + is_shared=False) + """ + + def __init__( + self, + policy: TensorDictModule, + *, + inference_context: int = 5, + spec: Optional[TensorSpec] = None, + ): + super().__init__(policy) + self.observation_key = "observation" + self.action_key = "action" + self.return_to_go_key = "return_to_go" + self.inference_context = inference_context + if spec is not None: + if not isinstance(spec, CompositeSpec) and len(self.out_keys) >= 1: + spec = CompositeSpec({self.action_key: spec}, shape=spec.shape[:-1]) + self._spec = spec + elif hasattr(self.td_module, "_spec"): + self._spec = self.td_module._spec.clone() + if self.action_key not in self._spec.keys(): + self._spec[self.action_key] = None + elif hasattr(self.td_module, "spec"): + self._spec = self.td_module.spec.clone() + if self.action_key not in self._spec.keys(): + self._spec[self.action_key] = None + else: + self._spec = CompositeSpec({key: None for key in policy.out_keys}) + self.checked = False + + @property + def in_keys(self): + return [self.observation_key, self.action_key, self.return_to_go_key] + + @property + def out_keys(self): + return sorted( + set(self.td_module.out_keys).union( + {self.observation_key, self.action_key, self.return_to_go_key} + ), + key=str, + ) + + def set_tensor_keys(self, **kwargs): + """Sets the input keys of the module. + + Keyword Args: + observation (NestedKey, optional): The observation key. + action (NestedKey, optional): The action key. + return_to_go (NestedKey, optional): The return_to_go key. + + """ + observation_key = unravel_key(kwargs.pop("observation", self.observation_key)) + action_key = unravel_key(kwargs.pop("action", self.action_key)) + return_to_go_key = unravel_key( + kwargs.pop("return_to_go", self.return_to_go_key) + ) + if kwargs: + raise TypeError( + f"Got unknown input(s) {kwargs.keys()}. Accepted keys are 'action', 'return_to_go' and 'observation'." + ) + if action_key not in self.td_module.out_keys: + raise ValueError( + f"The action key {action_key} was not found in the policy out_keys {self.td_module.out_keys}." + ) + self.observation_key = observation_key + self.action_key = action_key + self.return_to_go_key = return_to_go_key + + def step(self, frames: int = 1) -> None: + pass + + @staticmethod + def _check_tensor_dims(reward, obs, action): + if not (reward.shape[:-1] == obs.shape[:-1] == action.shape[:-1]): + raise ValueError( + "Mismatched tensor dimensions. This is not supported yet, file an issue on torchrl" + ) + + def mask_context(self, tensordict: TensorDictBase) -> TensorDictBase: + """Mask the context of the input sequences.""" + observation = tensordict.get(self.observation_key).clone() + action = tensordict.get(self.action_key).clone() + return_to_go = tensordict.get(self.return_to_go_key).clone() + self._check_tensor_dims(return_to_go, observation, action) + + observation[..., : -self.inference_context, :] = 0 + action[ + ..., : -(self.inference_context - 1), : + ] = 0 # as we add zeros to the end of the action + action = torch.cat( + [ + action[..., 1:, :], + torch.zeros( + *action.shape[:-2], 1, action.shape[-1], device=action.device + ), + ], + dim=-2, + ) + return_to_go[..., : -self.inference_context, :] = 0 + + tensordict.set(self.observation_key, observation) + tensordict.set(self.action_key, action) + tensordict.set(self.return_to_go_key, return_to_go) + return tensordict + + def check_keys(self): + # an exception will be raised if the action key mismatch + self.set_tensor_keys() + self.checked = True + + @dispatch + def forward(self, tensordict: TensorDictBase) -> TensorDictBase: + if not self.checked: + self.check_keys() + """Forward pass of the inference wrapper.""" + tensordict = tensordict.clone(False) + obs = tensordict.get(self.observation_key) + # Mask the context of the input sequences + tensordict = self.mask_context(tensordict) + # forward pass + tensordict = self.td_module.forward(tensordict) + # get last action predicton + out_action = tensordict.get(self.action_key) + if tensordict.ndim == out_action.ndim - 1: + # then time dimension is in the TD's dimensions, and we must get rid of it + tensordict.batch_size = tensordict.batch_size[:-1] + out_action = out_action[..., -1, :] + tensordict.set(self.action_key, out_action) + # out_rtg = tensordict.get(self.return_to_go_key)[:, -1] + out_rtg = tensordict.get(self.return_to_go_key) + out_rtg = out_rtg[..., -1, :] + tensordict.set(self.return_to_go_key, out_rtg) + # set unmasked observation + tensordict.set(self.observation_key, obs) + return tensordict + + class TanhModule(TensorDictModuleBase): """A Tanh module for deterministic policies with bounded action space. diff --git a/torchrl/objectives/__init__.py b/torchrl/objectives/__init__.py index 163365bdc75..023b22ba3c4 100644 --- a/torchrl/objectives/__init__.py +++ b/torchrl/objectives/__init__.py @@ -7,6 +7,7 @@ from .common import LossModule from .cql import CQLLoss from .ddpg import DDPGLoss +from .decision_transformer import DTLoss, OnlineDTLoss from .dqn import DistributionalDQNLoss, DQNLoss from .dreamer import DreamerActorLoss, DreamerModelLoss, DreamerValueLoss from .iql import IQLLoss diff --git a/torchrl/objectives/decision_transformer.py b/torchrl/objectives/decision_transformer.py new file mode 100644 index 00000000000..768e05de9c6 --- /dev/null +++ b/torchrl/objectives/decision_transformer.py @@ -0,0 +1,309 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +import math +from dataclasses import dataclass +from typing import Union + +import numpy as np + +import torch +from tensordict.nn import dispatch +from tensordict.tensordict import TensorDict, TensorDictBase +from tensordict.utils import NestedKey + +from torch import distributions as d +from torchrl.modules import ProbabilisticActor + +from torchrl.objectives.common import LossModule +from torchrl.objectives.utils import distance_loss + + +class OnlineDTLoss(LossModule): + r"""TorchRL implementation of the Online Decision Transformer loss. + + Presented in `"Online Decision Transformer" ` + + Args: + actor_network (ProbabilisticActor): stochastic actor + + Keyword Args: + alpha_init (float, optional): initial entropy multiplier. + Default is 1.0. + min_alpha (float, optional): min value of alpha. + Default is None (no minimum value). + max_alpha (float, optional): max value of alpha. + Default is None (no maximum value). + fixed_alpha (bool, optional): if ``True``, alpha will be fixed to its + initial value. Otherwise, alpha will be optimized to + match the 'target_entropy' value. + Default is ``False``. + target_entropy (float or str, optional): Target entropy for the + stochastic policy. Default is "auto", where target entropy is + computed as :obj:`-prod(n_actions)`. + samples_mc_entropy (int): number of samples to estimate the entropy + + """ + + @dataclass + class _AcceptedKeys: + """Maintains default values for all configurable tensordict keys. + + This class defines which tensordict keys can be set using '.set_keys(key_name=key_value)' and their + default values. + + Attributes: + action (NestedKey): The input tensordict key where the action is expected. + Defaults to ``"action"``. + + """ + + action: NestedKey = "action" + + default_keys = _AcceptedKeys() + + def __init__( + self, + actor_network: ProbabilisticActor, + *, + alpha_init: float = 1.0, + min_alpha: float = None, + max_alpha: float = None, + fixed_alpha: bool = False, + target_entropy: Union[str, float] = "auto", + samples_mc_entropy: int = 1, + ) -> None: + self._in_keys = None + self._out_keys = None + super().__init__() + + # Actor Network + self.convert_to_functional( + actor_network, + "actor_network", + create_target_params=False, + funs_to_decorate=["forward", "get_dist"], + ) + try: + device = next(self.parameters()).device + except AttributeError: + device = torch.device("cpu") + + self.register_buffer("alpha_init", torch.tensor(alpha_init, device=device)) + if bool(min_alpha) ^ bool(max_alpha): + min_alpha = min_alpha if min_alpha else 0.0 + if max_alpha == 0: + raise ValueError("max_alpha must be either None or greater than 0.") + max_alpha = max_alpha if max_alpha else 1e9 + if min_alpha: + self.register_buffer( + "min_log_alpha", torch.tensor(min_alpha, device=device).log() + ) + else: + self.min_log_alpha = None + if max_alpha: + self.register_buffer( + "max_log_alpha", torch.tensor(max_alpha, device=device).log() + ) + else: + self.max_log_alpha = None + self.fixed_alpha = fixed_alpha + if fixed_alpha: + self.register_buffer( + "log_alpha", torch.tensor(math.log(alpha_init), device=device) + ) + else: + self.register_parameter( + "log_alpha", + torch.nn.Parameter(torch.tensor(math.log(alpha_init), device=device)), + ) + + if target_entropy == "auto": + if actor_network.spec is None: + raise RuntimeError( + "Cannot infer the dimensionality of the action. Consider providing " + "the target entropy explicitely or provide the spec of the " + "action tensor in the actor network." + ) + target_entropy = -float(np.prod(actor_network.spec["action"].shape)) + self.register_buffer( + "target_entropy", torch.tensor(target_entropy, device=device) + ) + + self.samples_mc_entropy = samples_mc_entropy + self._set_in_keys() + + def _set_in_keys(self): + keys = self.actor_network.in_keys + keys = set(keys) + keys.add(self.tensor_keys.action) + self._in_keys = sorted(keys, key=str) + + def _forward_value_estimator_keys(self, **kwargs): + pass + + @property + def alpha(self): + if self.min_log_alpha is not None: + self.log_alpha.data.clamp_(self.min_log_alpha, self.max_log_alpha) + with torch.no_grad(): + alpha = self.log_alpha.exp() + return alpha + + @property + def in_keys(self): + if self._in_keys is None: + self._set_in_keys() + return self._in_keys + + @in_keys.setter + def in_keys(self, values): + self._in_keys = values + + @property + def out_keys(self): + if self._out_keys is None: + keys = [ + "loss_log_likelihood", + "loss_entropy", + "loss_alpha", + "alpha", + "entropy", + ] + self._out_keys = keys + return self._out_keys + + @out_keys.setter + def out_keys(self, values): + self._out_keys = values + + def get_entropy_bonus(self, dist: d.Distribution) -> torch.Tensor: + x = dist.rsample((self.samples_mc_entropy,)) + log_p = dist.log_prob(x) + # log_p: (batch_size, context_len) + return -log_p.mean(axis=0) + + @dispatch + def forward(self, tensordict: TensorDictBase) -> TensorDictBase: + """Compute the loss for the Online Decision Transformer.""" + # extract action targets + target_actions = tensordict.get(self.tensor_keys.action).detach() + + action_dist = self.actor_network.get_dist( + tensordict, params=self.actor_network_params + ) + + log_likelihood = action_dist.log_prob(target_actions).mean() + entropy = self.get_entropy_bonus(action_dist).mean() + entropy_bonus = self.alpha.detach() * entropy + + loss_alpha = self.log_alpha.exp() * (entropy - self.target_entropy).detach() + + out = { + "loss_log_likelihood": -log_likelihood, + "loss_entropy": -entropy_bonus, + "loss_alpha": loss_alpha, + "entropy": entropy.detach(), + "alpha": self.alpha.detach(), + } + return TensorDict(out, []) + + +class DTLoss(LossModule): + r"""TorchRL implementation of the Online Decision Transformer loss. + + Presented in `"Decision Transformer: Reinforcement Learning via Sequence Modeling" ` + + Args: + actor_network (ProbabilisticActor): stochastic actor + + Keyword Args: + loss_function (str): loss function to use. Defaults to ``"l2"``. + + """ + + @dataclass + class _AcceptedKeys: + """Maintains default values for all configurable tensordict keys. + + This class defines which tensordict keys can be set using '.set_keys(key_name=key_value)' and their + default values. + + Attributes: + action (NestedKey): The input tensordict key where the action is expected. + Defaults to ``"action"``. + """ + + action: NestedKey = "action" + + default_keys = _AcceptedKeys() + + def __init__( + self, + actor_network: ProbabilisticActor, + *, + loss_function: str = "l2", + ) -> None: + self._in_keys = None + self._out_keys = None + super().__init__() + + # Actor Network + self.convert_to_functional( + actor_network, + "actor_network", + create_target_params=False, + funs_to_decorate=["forward"], + ) + self.loss_function = loss_function + + def _set_in_keys(self): + keys = self.actor_network.in_keys + keys = set(keys) + keys.add(self.tensor_keys.action) + self._in_keys = sorted(keys, key=str) + + def _forward_value_estimator_keys(self, **kwargs) -> None: + pass + + @property + def in_keys(self): + if self._in_keys is None: + self._set_in_keys() + return self._in_keys + + @in_keys.setter + def in_keys(self, values): + self._in_keys = values + + @property + def out_keys(self): + if self._out_keys is None: + keys = ["loss"] + self._out_keys = keys + return self._out_keys + + @out_keys.setter + def out_keys(self, values): + self._out_keys = values + + @dispatch + def forward(self, tensordict: TensorDictBase) -> TensorDictBase: + """Compute the loss for the Online Decision Transformer.""" + # extract action targets + target_actions = tensordict.get(self.tensor_keys.action).detach() + + pred_actions = self.actor_network( + tensordict, params=self.actor_network_params + ).get(self.tensor_keys.action) + loss = distance_loss( + pred_actions, + target_actions, + loss_function=self.loss_function, + ).mean() + out = { + "loss": loss, + } + return TensorDict(out, []) From e9663b64c7a10830a224fb80cb3e03d5e04b120c Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 30 Aug 2023 10:08:38 +0100 Subject: [PATCH 042/148] [CI] Fix Mujoco version (#1475) --- .circleci/unittest/linux/scripts/run_all.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/.circleci/unittest/linux/scripts/run_all.sh b/.circleci/unittest/linux/scripts/run_all.sh index 85a46061b13..f62562d4715 100755 --- a/.circleci/unittest/linux/scripts/run_all.sh +++ b/.circleci/unittest/linux/scripts/run_all.sh @@ -90,6 +90,7 @@ conda activate "${env_dir}" echo "installing gymnasium" pip3 install "gymnasium[atari,ale-py,accept-rom-license]" pip3 install mo-gymnasium[mujoco] # requires here bc needs mujoco-py +pip3 install mujoco -U # sanity check: remove? python3 -c """ From 919dcf14705f4a9f05f7ff2acba97d05048e7552 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Wed, 30 Aug 2023 15:25:54 +0100 Subject: [PATCH 043/148] [Feature] Allow multiple (nested) action, reward, done keys in `env`,`vec_env` and `collectors` (#1462) Signed-off-by: Matteo Bettini Co-authored-by: vmoens --- benchmarks/test_envs_benchmark.py | 6 +- docs/source/reference/envs.rst | 8 +- test/mocking_classes.py | 344 +++++-- test/test_actors.py | 2 +- test/test_collector.py | 84 +- test/test_env.py | 188 +++- test/test_transforms.py | 14 +- torchrl/collectors/collectors.py | 72 +- torchrl/data/utils.py | 16 + torchrl/envs/common.py | 899 +++++++++++++------ torchrl/envs/libs/isaacgym.py | 2 +- torchrl/envs/transforms/rlhf.py | 12 +- torchrl/envs/transforms/transforms.py | 95 +- torchrl/envs/utils.py | 72 +- torchrl/envs/vec_env.py | 143 +-- torchrl/trainers/helpers/models.py | 8 +- tutorials/sphinx-tutorials/multiagent_ppo.py | 12 +- 17 files changed, 1411 insertions(+), 566 deletions(-) diff --git a/benchmarks/test_envs_benchmark.py b/benchmarks/test_envs_benchmark.py index d873b5efb6a..da49cdae5b1 100644 --- a/benchmarks/test_envs_benchmark.py +++ b/benchmarks/test_envs_benchmark.py @@ -118,9 +118,9 @@ def test_step_mdp_speed( benchmark( step_mdp, td, - action_key=action_key, - reward_key=reward_key, - done_key=done_key, + action_keys=action_key, + reward_keys=reward_key, + done_keys=done_key, keep_other=keep_other, exclude_reward=exclude_reward, exclude_done=exclude_done, diff --git a/docs/source/reference/envs.rst b/docs/source/reference/envs.rst index 1150eea3e99..1cd56ba13b4 100644 --- a/docs/source/reference/envs.rst +++ b/docs/source/reference/envs.rst @@ -38,10 +38,10 @@ Each env will have the following attributes: - :obj:`env.done_spec`: a :class:`~torchrl.data.TensorSpec` object representing the done-flag spec. - :obj:`env.input_spec`: a :class:`~torchrl.data.CompositeSpec` object containing - all the input keys (:obj:`"_action_spec"` and :obj:`"_state_spec"`). + all the input keys (:obj:`"full_action_spec"` and :obj:`"full_state_spec"`). It is locked and should not be modified directly. - :obj:`env.output_spec`: a :class:`~torchrl.data.CompositeSpec` object containing - all the output keys (:obj:`"_observation_spec"`, :obj:`"_reward_spec"` and :obj:`"_done_spec"`). + all the output keys (:obj:`"full_observation_spec"`, :obj:`"full_reward_spec"` and :obj:`"full_done_spec"`). It is locked and should not be modified directly. Importantly, the environment spec shapes should contain the batch size, e.g. @@ -340,8 +340,8 @@ single agent standards. spec if the accessed spec is Composite. Therefore, if in the example above we run `env.reward_spec` after env creation, we would get the same output as `torch.stack(reward_specs)}`. To get the full composite spec with the "agents" key, you can run - `env.output_spec["_reward_spec"]`. The same is valid for action and done specs. - Note that `env.reward_spec == env.output_spec["_reward_spec"][env.reward_key]`. + `env.output_spec["full_reward_spec"]`. The same is valid for action and done specs. + Note that `env.reward_spec == env.output_spec["full_reward_spec"][env.reward_key]`. Transforms diff --git a/test/mocking_classes.py b/test/mocking_classes.py index 1af0ba59c6c..147ea4e32f4 100644 --- a/test/mocking_classes.py +++ b/test/mocking_classes.py @@ -60,27 +60,27 @@ def __new__( *args, **kwargs, ): - for key, item in list(cls._output_spec["_observation_spec"].items()): - cls._output_spec["_observation_spec"][key] = item.to( + for key, item in list(cls._output_spec["full_observation_spec"].items()): + cls._output_spec["full_observation_spec"][key] = item.to( torch.get_default_dtype() ) - cls._output_spec["_reward_spec"] = cls._output_spec["_reward_spec"].to( + cls._output_spec["full_reward_spec"] = cls._output_spec["full_reward_spec"].to( torch.get_default_dtype() ) - if not isinstance(cls._output_spec["_reward_spec"], CompositeSpec): - cls._output_spec["_reward_spec"] = CompositeSpec( - reward=cls._output_spec["_reward_spec"], - shape=cls._output_spec["_reward_spec"].shape[:-1], + if not isinstance(cls._output_spec["full_reward_spec"], CompositeSpec): + cls._output_spec["full_reward_spec"] = CompositeSpec( + reward=cls._output_spec["full_reward_spec"], + shape=cls._output_spec["full_reward_spec"].shape[:-1], ) - if not isinstance(cls._output_spec["_done_spec"], CompositeSpec): - cls._output_spec["_done_spec"] = CompositeSpec( - done=cls._output_spec["_done_spec"], - shape=cls._output_spec["_done_spec"].shape[:-1], + if not isinstance(cls._output_spec["full_done_spec"], CompositeSpec): + cls._output_spec["full_done_spec"] = CompositeSpec( + done=cls._output_spec["full_done_spec"], + shape=cls._output_spec["full_done_spec"].shape[:-1], ) - if not isinstance(cls._input_spec["_action_spec"], CompositeSpec): - cls._input_spec["_action_spec"] = CompositeSpec( - action=cls._input_spec["_action_spec"], - shape=cls._input_spec["_action_spec"].shape[:-1], + if not isinstance(cls._input_spec["full_action_spec"], CompositeSpec): + cls._input_spec["full_action_spec"] = CompositeSpec( + action=cls._input_spec["full_action_spec"], + shape=cls._input_spec["full_action_spec"].shape[:-1], ) return super().__new__(cls, *args, **kwargs) @@ -163,25 +163,25 @@ def __new__( if state_spec is None: state_spec = CompositeSpec(shape=batch_size) input_spec = CompositeSpec( - _action_spec=action_spec, _state_spec=state_spec, shape=batch_size + full_action_spec=action_spec, full_state_spec=state_spec, shape=batch_size ) cls._output_spec = CompositeSpec(shape=batch_size) - cls._output_spec["_reward_spec"] = reward_spec - cls._output_spec["_done_spec"] = done_spec - cls._output_spec["_observation_spec"] = observation_spec + cls._output_spec["full_reward_spec"] = reward_spec + cls._output_spec["full_done_spec"] = done_spec + cls._output_spec["full_observation_spec"] = observation_spec cls._input_spec = input_spec - if not isinstance(cls._output_spec["_reward_spec"], CompositeSpec): - cls._output_spec["_reward_spec"] = CompositeSpec( - reward=cls._output_spec["_reward_spec"], shape=batch_size + if not isinstance(cls._output_spec["full_reward_spec"], CompositeSpec): + cls._output_spec["full_reward_spec"] = CompositeSpec( + reward=cls._output_spec["full_reward_spec"], shape=batch_size ) - if not isinstance(cls._output_spec["_done_spec"], CompositeSpec): - cls._output_spec["_done_spec"] = CompositeSpec( - done=cls._output_spec["_done_spec"], shape=batch_size + if not isinstance(cls._output_spec["full_done_spec"], CompositeSpec): + cls._output_spec["full_done_spec"] = CompositeSpec( + done=cls._output_spec["full_done_spec"], shape=batch_size ) - if not isinstance(cls._input_spec["_action_spec"], CompositeSpec): - cls._input_spec["_action_spec"] = CompositeSpec( - action=cls._input_spec["_action_spec"], shape=batch_size + if not isinstance(cls._input_spec["full_action_spec"], CompositeSpec): + cls._input_spec["full_action_spec"] = CompositeSpec( + action=cls._input_spec["full_action_spec"], shape=batch_size ) return super().__new__(*args, **kwargs) @@ -277,25 +277,25 @@ def __new__( if done_spec is None: done_spec = DiscreteTensorSpec(2, dtype=torch.bool, shape=(*batch_size, 1)) cls._output_spec = CompositeSpec(shape=batch_size) - cls._output_spec["_reward_spec"] = reward_spec - cls._output_spec["_done_spec"] = done_spec - cls._output_spec["_observation_spec"] = observation_spec + cls._output_spec["full_reward_spec"] = reward_spec + cls._output_spec["full_done_spec"] = done_spec + cls._output_spec["full_observation_spec"] = observation_spec cls._input_spec = CompositeSpec( - _action_spec=action_spec, - _state_spec=state_spec, + full_action_spec=action_spec, + full_state_spec=state_spec, shape=batch_size, ) - if not isinstance(cls._output_spec["_reward_spec"], CompositeSpec): - cls._output_spec["_reward_spec"] = CompositeSpec( - reward=cls._output_spec["_reward_spec"], shape=batch_size + if not isinstance(cls._output_spec["full_reward_spec"], CompositeSpec): + cls._output_spec["full_reward_spec"] = CompositeSpec( + reward=cls._output_spec["full_reward_spec"], shape=batch_size ) - if not isinstance(cls._output_spec["_done_spec"], CompositeSpec): - cls._output_spec["_done_spec"] = CompositeSpec( - done=cls._output_spec["_done_spec"], shape=batch_size + if not isinstance(cls._output_spec["full_done_spec"], CompositeSpec): + cls._output_spec["full_done_spec"] = CompositeSpec( + done=cls._output_spec["full_done_spec"], shape=batch_size ) - if not isinstance(cls._input_spec["_action_spec"], CompositeSpec): - cls._input_spec["_action_spec"] = CompositeSpec( - action=cls._input_spec["_action_spec"], shape=batch_size + if not isinstance(cls._input_spec["full_action_spec"], CompositeSpec): + cls._input_spec["full_action_spec"] = CompositeSpec( + action=cls._input_spec["full_action_spec"], shape=batch_size ) return super().__new__(cls, *args, **kwargs) @@ -451,12 +451,12 @@ def __new__( shape=batch_size, ) cls._output_spec = CompositeSpec(shape=batch_size) - cls._output_spec["_reward_spec"] = reward_spec - cls._output_spec["_done_spec"] = done_spec - cls._output_spec["_observation_spec"] = observation_spec + cls._output_spec["full_reward_spec"] = reward_spec + cls._output_spec["full_done_spec"] = done_spec + cls._output_spec["full_observation_spec"] = observation_spec cls._input_spec = CompositeSpec( - _action_spec=action_spec, - _state_spec=state_spec, + full_action_spec=action_spec, + full_state_spec=state_spec, shape=batch_size, ) cls.from_pixels = from_pixels @@ -553,12 +553,12 @@ def __new__( shape=batch_size, ) cls._output_spec = CompositeSpec(shape=batch_size) - cls._output_spec["_reward_spec"] = reward_spec - cls._output_spec["_done_spec"] = done_spec - cls._output_spec["_observation_spec"] = observation_spec + cls._output_spec["full_reward_spec"] = reward_spec + cls._output_spec["full_done_spec"] = done_spec + cls._output_spec["full_observation_spec"] = observation_spec cls._input_spec = CompositeSpec( - _action_spec=action_spec, - _state_spec=state_spec, + full_action_spec=action_spec, + full_state_spec=state_spec, shape=batch_size, ) cls.from_pixels = from_pixels @@ -1451,7 +1451,7 @@ def _reset( reset_td = self.observation_spec.zero() reset_td.apply_(lambda x: x + expand_right(self.count, x.shape)) - reset_td.update(self.output_spec["_done_spec"].zero()) + reset_td.update(self.output_spec["full_done_spec"].zero()) assert reset_td.batch_size == self.batch_size @@ -1471,8 +1471,8 @@ def _step( td = self.observation_spec.zero() td.apply_(lambda x: x + expand_right(self.count, x.shape)) - td.update(self.output_spec["_done_spec"].zero()) - td.update(self.output_spec["_reward_spec"].zero()) + td.update(self.output_spec["full_done_spec"].zero()) + td.update(self.output_spec["full_reward_spec"].zero()) assert td.batch_size == self.batch_size td[self.done_key] = expand_right( @@ -1483,3 +1483,237 @@ def _step( def _set_seed(self, seed: Optional[int]): torch.manual_seed(seed) + + +class MultiKeyCountingEnvPolicy: + def __init__( + self, + full_action_spec: TensorSpec, + count: bool = True, + deterministic: bool = False, + ): + if not deterministic and not count: + raise ValueError("Not counting policy is always deterministic") + + self.full_action_spec = full_action_spec + self.count = count + self.deterministic = deterministic + + def __call__(self, td: TensorDictBase) -> TensorDictBase: + action_td = self.full_action_spec.zero() + if self.count: + if self.deterministic: + action_td["nested_1", "action"] += 1 + action_td["nested_2", "azione"] += 1 + action_td["action"][..., 1] = 1 + else: + # We choose an action at random + choice = torch.randint(0, 3, ()).item() + if choice == 0: + action_td["nested_1", "action"] += 1 + elif choice == 1: + action_td["nested_2", "azione"] += 1 + else: + action_td["action"][..., 1] = 1 + return td.update(action_td) + + +class MultiKeyCountingEnv(EnvBase): + def __init__(self, max_steps: int = 5, start_val: int = 0, **kwargs): + super().__init__(**kwargs) + + self.max_steps = max_steps + self.start_val = start_val + self.nested_dim_1 = 3 + self.nested_dim_2 = 2 + + count = torch.zeros((*self.batch_size, 1), device=self.device, dtype=torch.int) + count_nested_1 = torch.zeros( + (*self.batch_size, self.nested_dim_1, 1), + device=self.device, + dtype=torch.int, + ) + count_nested_2 = torch.zeros( + (*self.batch_size, self.nested_dim_2, 1), + device=self.device, + dtype=torch.int, + ) + + count[:] = self.start_val + count_nested_1[:] = self.start_val + count_nested_2[:] = self.start_val + + self.register_buffer("count", count) + self.register_buffer("count_nested_1", count_nested_1) + self.register_buffer("count_nested_2", count_nested_2) + + self.make_specs() + + self.action_spec = self.unbatched_action_spec.expand( + *self.batch_size, *self.unbatched_action_spec.shape + ) + self.observation_spec = self.unbatched_observation_spec.expand( + *self.batch_size, *self.unbatched_observation_spec.shape + ) + self.reward_spec = self.unbatched_reward_spec.expand( + *self.batch_size, *self.unbatched_reward_spec.shape + ) + self.done_spec = self.unbatched_done_spec.expand( + *self.batch_size, *self.unbatched_done_spec.shape + ) + + def make_specs(self): + self.unbatched_observation_spec = CompositeSpec( + nested_1=CompositeSpec( + observation=BoundedTensorSpec( + minimum=0, maximum=200, shape=(self.nested_dim_1, 3) + ), + shape=(self.nested_dim_1,), + ), + nested_2=CompositeSpec( + observation=UnboundedContinuousTensorSpec(shape=(self.nested_dim_2, 2)), + shape=(self.nested_dim_2,), + ), + observation=UnboundedContinuousTensorSpec( + shape=( + 10, + 10, + 3, + ) + ), + ) + + self.unbatched_action_spec = CompositeSpec( + nested_1=CompositeSpec( + action=DiscreteTensorSpec(n=2, shape=(self.nested_dim_1,)), + shape=(self.nested_dim_1,), + ), + nested_2=CompositeSpec( + azione=BoundedTensorSpec( + minimum=0, maximum=100, shape=(self.nested_dim_2, 1) + ), + shape=(self.nested_dim_2,), + ), + action=OneHotDiscreteTensorSpec(n=2), + ) + + self.unbatched_reward_spec = CompositeSpec( + nested_1=CompositeSpec( + gift=UnboundedContinuousTensorSpec(shape=(self.nested_dim_1, 1)), + shape=(self.nested_dim_1,), + ), + nested_2=CompositeSpec( + reward=UnboundedContinuousTensorSpec(shape=(self.nested_dim_2, 1)), + shape=(self.nested_dim_2,), + ), + reward=UnboundedContinuousTensorSpec(shape=(1,)), + ) + + self.unbatched_done_spec = CompositeSpec( + nested_1=CompositeSpec( + done=DiscreteTensorSpec( + n=2, + shape=(self.nested_dim_1, 1), + dtype=torch.bool, + ), + shape=(self.nested_dim_1,), + ), + nested_2=CompositeSpec( + done=DiscreteTensorSpec( + n=2, + shape=(self.nested_dim_2, 1), + dtype=torch.bool, + ), + shape=(self.nested_dim_2,), + ), + done=DiscreteTensorSpec( + n=2, + shape=(1,), + dtype=torch.bool, + ), + ) + + def _reset( + self, + tensordict: TensorDictBase = None, + **kwargs, + ) -> TensorDictBase: + reset_all = False + if tensordict is not None: + _reset = tensordict.get("_reset", None) + if _reset is not None: + self.count[_reset.squeeze(-1)] = self.start_val + + _reset_nested_1 = tensordict.get(("nested_1", "_reset"), None) + if _reset_nested_1 is not None: + self.count_nested_1[_reset_nested_1.squeeze(-1)] = self.start_val + + _reset_nested_2 = tensordict.get(("nested_2", "_reset"), None) + if _reset_nested_2 is not None: + self.count_nested_2[_reset_nested_2.squeeze(-1)] = self.start_val + + if _reset is None and _reset_nested_1 is None and _reset_nested_2 is None: + reset_all = True + + if tensordict is None or reset_all: + self.count[:] = self.start_val + self.count_nested_1[:] = self.start_val + self.count_nested_2[:] = self.start_val + + reset_td = self.observation_spec.zero() + reset_td["observation"] += expand_right( + self.count, reset_td["observation"].shape + ) + reset_td["nested_1", "observation"] += expand_right( + self.count_nested_1, reset_td["nested_1", "observation"].shape + ) + reset_td["nested_2", "observation"] += expand_right( + self.count_nested_2, reset_td["nested_2", "observation"].shape + ) + + reset_td.update(self.output_spec["full_done_spec"].zero()) + + assert reset_td.batch_size == self.batch_size + + return reset_td + + def _step( + self, + tensordict: TensorDictBase, + ) -> TensorDictBase: + + # Each action has a corresponding reward, done, and observation + reward = self.output_spec["full_reward_spec"].zero() + done = self.output_spec["full_done_spec"].zero() + td = self.observation_spec.zero() + + one_hot_action = tensordict["action"].argmax(-1).unsqueeze(-1) + reward["reward"] += one_hot_action.to(torch.float) + self.count += one_hot_action.to(torch.int) + td["observation"] += expand_right(self.count, td["observation"].shape) + done["done"] = self.count > self.max_steps + + discrete_action = tensordict["nested_1"]["action"].unsqueeze(-1) + reward["nested_1"]["gift"] += discrete_action.to(torch.float) + self.count_nested_1 += discrete_action.to(torch.int) + td["nested_1", "observation"] += expand_right( + self.count_nested_1, td["nested_1", "observation"].shape + ) + done["nested_1", "done"] = self.count_nested_1 > self.max_steps + + continuous_action = tensordict["nested_2"]["azione"] + reward["nested_2"]["reward"] += continuous_action.to(torch.float) + self.count_nested_2 += continuous_action.to(torch.bool) + td["nested_2", "observation"] += expand_right( + self.count_nested_2, td["nested_2", "observation"].shape + ) + done["nested_2", "done"] = self.count_nested_2 > self.max_steps + + td.update(done) + td.update(reward) + + assert td.batch_size == self.batch_size + return td.select().set("next", td) + + def _set_seed(self, seed: Optional[int]): + torch.manual_seed(seed) diff --git a/test/test_actors.py b/test/test_actors.py index 91d7c79bf81..d16c95731d5 100644 --- a/test/test_actors.py +++ b/test/test_actors.py @@ -217,7 +217,7 @@ def test_nested_keys(self, nested_action, batch_size, nested_dim=5): env = NestedCountingEnv( nest_obs_action=nested_action, batch_size=batch_size, nested_dim=nested_dim ) - action_spec = env._input_spec["_action_spec"] + action_spec = env._input_spec["full_action_spec"] leaf_action_spec = env.action_spec space_str, spec = _process_action_space_spec(None, action_spec) diff --git a/test/test_collector.py b/test/test_collector.py index 0d019b57844..17eed15409c 100644 --- a/test/test_collector.py +++ b/test/test_collector.py @@ -22,10 +22,14 @@ HeteroCountingEnv, HeteroCountingEnvPolicy, MockSerialEnv, + MultiKeyCountingEnv, + MultiKeyCountingEnvPolicy, NestedCountingEnv, ) from tensordict.nn import TensorDictModule from tensordict.tensordict import assert_allclose_td, TensorDict + +from test_env import TestMultiKeyEnvs from torch import nn from torchrl._utils import prod, seed_generator from torchrl.collectors import aSyncDataCollector, SyncDataCollector @@ -47,6 +51,7 @@ ) from torchrl.envs.libs.gym import _has_gym, GymEnv from torchrl.envs.transforms import TransformedEnv, VecNorm +from torchrl.envs.utils import _replace_last from torchrl.modules import Actor, LSTMNet, OrnsteinUhlenbeckProcessWrapper, SafeModule # torch.set_default_dtype(torch.double) @@ -1477,7 +1482,7 @@ def test_collector_het_env(self, batch_size, frames_per_batch, seed=1, max_steps batch_size = torch.Size(batch_size) env = HeteroCountingEnv(max_steps=max_steps - 1, batch_size=batch_size) torch.manual_seed(seed) - policy = HeteroCountingEnvPolicy(env.input_spec["_action_spec"]) + policy = HeteroCountingEnvPolicy(env.input_spec["full_action_spec"]) ccollector = SyncDataCollector( create_env_fn=env, policy=policy, @@ -1508,7 +1513,82 @@ def test_multi_collector_het_env_consistency( env = HeteroCountingEnv(max_steps=3, batch_size=(batch_dim,)) torch.manual_seed(seed) env_fn = lambda: TransformedEnv(env, InitTracker()) - policy = HeteroCountingEnvPolicy(env.input_spec["_action_spec"]) + policy = HeteroCountingEnvPolicy(env.input_spec["full_action_spec"]) + + ccollector = MultiaSyncDataCollector( + create_env_fn=[env_fn], + policy=policy, + frames_per_batch=frames_per_batch, + total_frames=100, + device="cpu", + ) + for i, d in enumerate(ccollector): + if i == 0: + c1 = d + elif i == 1: + c2 = d + else: + break + assert d.names[-1] == "time" + with pytest.raises(AssertionError): + assert_allclose_td(c1, c2) + ccollector.shutdown() + + ccollector = MultiSyncDataCollector( + create_env_fn=[env_fn], + policy=policy, + frames_per_batch=frames_per_batch, + total_frames=100, + device="cpu", + ) + for i, d in enumerate(ccollector): + if i == 0: + d1 = d + elif i == 1: + d2 = d + else: + break + assert d.names[-1] == "time" + with pytest.raises(AssertionError): + assert_allclose_td(d1, d2) + ccollector.shutdown() + + assert_allclose_td(c1, d1) + assert_allclose_td(c2, d2) + + +class TestMultiKeyEnvsCollector: + @pytest.mark.parametrize("batch_size", [(), (2,), (2, 1)]) + @pytest.mark.parametrize("frames_per_batch", [4, 8, 16]) + @pytest.mark.parametrize("max_steps", [2, 3]) + def test_collector(self, batch_size, frames_per_batch, max_steps, seed=1): + env = MultiKeyCountingEnv(batch_size=batch_size, max_steps=max_steps) + torch.manual_seed(seed) + policy = MultiKeyCountingEnvPolicy(env.input_spec["full_action_spec"]) + ccollector = SyncDataCollector( + create_env_fn=env, + policy=policy, + frames_per_batch=frames_per_batch, + total_frames=100, + device="cpu", + ) + + for _td in ccollector: + break + ccollector.shutdown() + for done_key in env.done_keys: + assert _replace_last(done_key, "_reset") not in _td.keys(True, True) + TestMultiKeyEnvs.check_rollout_consistency(_td, max_steps=max_steps) + + def test_multi_collector_consistency( + self, seed=1, frames_per_batch=20, batch_dim=10 + ): + env = MultiKeyCountingEnv(batch_size=(batch_dim,)) + env_fn = lambda: env + torch.manual_seed(seed) + policy = MultiKeyCountingEnvPolicy( + env.input_spec["full_action_spec"], deterministic=True + ) ccollector = MultiaSyncDataCollector( create_env_fn=[env_fn], diff --git a/test/test_env.py b/test/test_env.py index 4b9c9404fbf..e388974396f 100644 --- a/test/test_env.py +++ b/test/test_env.py @@ -38,12 +38,15 @@ MockBatchedLockedEnv, MockBatchedUnLockedEnv, MockSerialEnv, + MultiKeyCountingEnv, + MultiKeyCountingEnvPolicy, NestedCountingEnv, ) from packaging import version from tensordict import dense_stack_tds from tensordict.nn import TensorDictModuleBase from tensordict.tensordict import assert_allclose_td, LazyStackedTensorDict, TensorDict +from tensordict.utils import _unravel_key_to_tuple from torch import nn from torchrl.collectors import MultiSyncDataCollector, SyncDataCollector @@ -282,10 +285,10 @@ def test_mb_rollout(self, device, seed=0): ("next", key) for key in (*mb_env.observation_spec.keys(), "reward", "done") } expected_keys = expected_keys.union( - set(mb_env.input_spec["_action_spec"].keys()) + set(mb_env.input_spec["full_action_spec"].keys()) ) expected_keys = expected_keys.union( - set(mb_env.input_spec["_state_spec"].keys()) + set(mb_env.input_spec["full_state_spec"].keys()) ) expected_keys = expected_keys.union({"done", "next"}) assert set(rollout.keys(True)) == expected_keys @@ -1232,9 +1235,9 @@ def test_nested( exclude_reward=exclude_reward, exclude_done=exclude_done, exclude_action=exclude_action, - reward_key=reward_key, - done_key=done_key, - action_key=action_key, + reward_keys=reward_key, + done_keys=done_key, + action_keys=action_key, keep_other=keep_other, ) td_nested_keys = td.keys(True, True) @@ -1333,9 +1336,9 @@ def test_nested_partially( exclude_reward=exclude_reward, exclude_done=exclude_done, exclude_action=exclude_action, - reward_key=reward_key, - done_key=done_key, - action_key=action_key, + reward_keys=reward_key, + done_keys=done_key, + action_keys=action_key, keep_other=keep_other, ) td_keys_nested = td.keys(True, True) @@ -1372,9 +1375,9 @@ def test_nested_partially( exclude_reward=exclude_reward, exclude_done=exclude_done, exclude_action=exclude_action, - reward_key=reward_key, - done_key=done_key, - action_key=action_key, + reward_keys=reward_key, + done_keys=done_key, + action_keys=action_key, keep_other=keep_other, ) td_keys = td.keys() @@ -1476,9 +1479,9 @@ def test_heterogeenous( exclude_reward=exclude_reward, exclude_done=exclude_done, exclude_action=exclude_action, - reward_key=nested_reward_key, - done_key=nested_done_key, - action_key=nested_action_key, + reward_keys=nested_reward_key, + done_keys=nested_done_key, + action_keys=nested_action_key, keep_other=keep_other, ) td_nested_keys = td.keys(True, True) @@ -1821,8 +1824,16 @@ def test_nested_env(self, envclass): reset = env.reset() assert not isinstance(env.done_spec, CompositeSpec) assert not isinstance(env.reward_spec, CompositeSpec) - assert env.done_spec == env.output_spec[("_done_spec", *env.done_key)] - assert env.reward_spec == env.output_spec[("_reward_spec", *env.reward_key)] + assert ( + env.done_spec + == env.output_spec[("full_done_spec", *_unravel_key_to_tuple(env.done_key))] + ) + assert ( + env.reward_spec + == env.output_spec[ + ("full_reward_spec", *_unravel_key_to_tuple(env.reward_key)) + ] + ) if envclass == "NestedCountingEnv": assert env.done_key == ("data", "done") assert env.reward_key == ("data", "reward") @@ -1837,8 +1848,8 @@ def test_nested_env(self, envclass): assert ("next", "data", "done") in next_state.keys(True) assert ("next", "data", "states") in next_state.keys(True) assert ("next", "data", "reward") in next_state.keys(True) - assert ("next", *env.done_key) in next_state.keys(True) - assert ("next", *env.reward_key) in next_state.keys(True) + assert ("next", *_unravel_key_to_tuple(env.done_key)) in next_state.keys(True) + assert ("next", *_unravel_key_to_tuple(env.reward_key)) in next_state.keys(True) @pytest.mark.parametrize("batch_size", [(), (32,), (32, 1)]) def test_nested_env_dims(self, batch_size, nested_dim=5, rollout_length=3): @@ -1933,7 +1944,9 @@ def test_rollout(self, batch_size, rollout_steps, n_lazy_dim=3): @pytest.mark.parametrize("count", [True, False]) def test_rollout_policy(self, batch_size, rollout_steps, count): env = HeteroCountingEnv(batch_size=batch_size) - policy = HeteroCountingEnvPolicy(env.input_spec["_action_spec"], count=count) + policy = HeteroCountingEnvPolicy( + env.input_spec["full_action_spec"], count=count + ) td = env.rollout(rollout_steps, policy=policy, return_contiguous=False) td = dense_stack_tds(td) for i in range(env.n_nested_dim): @@ -1956,7 +1969,7 @@ def test_vec_env(self, batch_size, env_type, rollout_steps=4, n_workers=2): vec_env = ParallelEnv(n_workers, env_fun) vec_batch_size = (n_workers,) + batch_size # check_env_specs(vec_env, return_contiguous=False) - policy = HeteroCountingEnvPolicy(vec_env.input_spec["_action_spec"]) + policy = HeteroCountingEnvPolicy(vec_env.input_spec["full_action_spec"]) vec_env.reset() td = vec_env.rollout( rollout_steps, @@ -1973,6 +1986,140 @@ def test_vec_env(self, batch_size, env_type, rollout_steps=4, n_workers=2): assert (td["lazy"][..., i]["action"] == 1).all() +@pytest.mark.parametrize("seed", [0]) +class TestMultiKeyEnvs: + @staticmethod + def check_rollout_consistency(td: TensorDict, max_steps: int): + index_batch_size = (0,) * (len(td.batch_size) - 1) + + # Check done and reset for root + observation_is_max = td["next", "observation"][..., 0, 0, 0] == max_steps + 1 + next_is_done = td["next", "done"][index_batch_size][:-1].squeeze(-1) + assert (td["next", "done"][observation_is_max]).all() + assert (~td["next", "done"][~observation_is_max]).all() + # Obs after done is 0 + assert (td["observation"][index_batch_size][1:][next_is_done] == 0).all() + # Obs after not done is previous obs + assert ( + td["observation"][index_batch_size][1:][~next_is_done] + == td["next", "observation"][index_batch_size][:-1][~next_is_done] + ).all() + # Check observation and reward update with count action for root + action_is_count = td["action"].argmax(-1).to(torch.bool) + assert ( + td["next", "observation"][action_is_count] + == td["observation"][action_is_count] + 1 + ).all() + assert (td["next", "reward"][action_is_count] == 1).all() + # Check observation and reward do not update with no-count action for root + assert ( + td["next", "observation"][~action_is_count] + == td["observation"][~action_is_count] + ).all() + assert (td["next", "reward"][~action_is_count] == 0).all() + + # Check done and reset for nested_1 + observation_is_max = ( + td["next", "nested_1", "observation"][..., 0] == max_steps + 1 + ) + next_is_done = td["next", "nested_1", "done"][index_batch_size][:-1].squeeze(-1) + assert (td["next", "nested_1", "done"][observation_is_max]).all() + assert (~td["next", "nested_1", "done"][~observation_is_max]).all() + # Obs after done is 0 + assert ( + td["nested_1", "observation"][index_batch_size][1:][next_is_done] == 0 + ).all() + # Obs after not done is previous obs + assert ( + td["nested_1", "observation"][index_batch_size][1:][~next_is_done] + == td["next", "nested_1", "observation"][index_batch_size][:-1][ + ~next_is_done + ] + ).all() + # Check observation and reward update with count action for nested_1 + action_is_count = td["nested_1"]["action"].to(torch.bool) + assert ( + td["next", "nested_1", "observation"][action_is_count] + == td["nested_1", "observation"][action_is_count] + 1 + ).all() + assert (td["next", "nested_1", "gift"][action_is_count] == 1).all() + # Check observation and reward do not update with no-count action for nested_1 + assert ( + td["next", "nested_1", "observation"][~action_is_count] + == td["nested_1", "observation"][~action_is_count] + ).all() + assert (td["next", "nested_1", "gift"][~action_is_count] == 0).all() + + # Check done and reset for nested_2 + observation_is_max = ( + td["next", "nested_2", "observation"][..., 0] == max_steps + 1 + ) + next_is_done = td["next", "nested_2", "done"][index_batch_size][:-1].squeeze(-1) + assert (td["next", "nested_2", "done"][observation_is_max]).all() + assert (~td["next", "nested_2", "done"][~observation_is_max]).all() + # Obs after done is 0 + assert ( + td["nested_2", "observation"][index_batch_size][1:][next_is_done] == 0 + ).all() + # Obs after not done is previous obs + assert ( + td["nested_2", "observation"][index_batch_size][1:][~next_is_done] + == td["next", "nested_2", "observation"][index_batch_size][:-1][ + ~next_is_done + ] + ).all() + # Check observation and reward update with count action for nested_2 + action_is_count = td["nested_2"]["azione"].squeeze(-1).to(torch.bool) + assert ( + td["next", "nested_2", "observation"][action_is_count] + == td["nested_2", "observation"][action_is_count] + 1 + ).all() + assert (td["next", "nested_2", "reward"][action_is_count] == 1).all() + # Check observation and reward do not update with no-count action for nested_2 + assert ( + td["next", "nested_2", "observation"][~action_is_count] + == td["nested_2", "observation"][~action_is_count] + ).all() + assert (td["next", "nested_2", "reward"][~action_is_count] == 0).all() + + @pytest.mark.parametrize("batch_size", [(), (2,), (2, 1)]) + @pytest.mark.parametrize("rollout_steps", [1, 5]) + @pytest.mark.parametrize("max_steps", [2, 5]) + def test_rollout(self, batch_size, rollout_steps, max_steps, seed): + env = MultiKeyCountingEnv(batch_size=batch_size, max_steps=max_steps) + policy = MultiKeyCountingEnvPolicy(full_action_spec=env.action_spec) + td = env.rollout(rollout_steps, policy=policy) + torch.manual_seed(seed) + self.check_rollout_consistency(td, max_steps=max_steps) + + @pytest.mark.parametrize("batch_size", [(), (2,), (2, 1)]) + @pytest.mark.parametrize("rollout_steps", [5]) + @pytest.mark.parametrize("env_type", ["serial", "parallel"]) + @pytest.mark.parametrize("max_steps", [2, 5]) + def test_parallel( + self, batch_size, rollout_steps, env_type, max_steps, seed, n_workers=2 + ): + torch.manual_seed(seed) + env_fun = lambda: MultiKeyCountingEnv( + batch_size=batch_size, max_steps=max_steps + ) + if env_type == "serial": + vec_env = SerialEnv(n_workers, env_fun) + else: + vec_env = ParallelEnv(n_workers, env_fun) + + # check_env_specs(vec_env) + policy = MultiKeyCountingEnvPolicy( + full_action_spec=vec_env.input_spec["full_action_spec"] + ) + vec_env.reset() + td = vec_env.rollout( + rollout_steps, + policy=policy, + ) + self.check_rollout_consistency(td, max_steps=max_steps) + + @pytest.mark.parametrize( "envclass", [ @@ -1992,6 +2139,7 @@ def test_vec_env(self, batch_size, env_type, rollout_steps=4, n_workers=2): MockSerialEnv, NestedCountingEnv, HeteroCountingEnv, + MultiKeyCountingEnv, ], ) def test_mocking_envs(envclass): diff --git a/test/test_transforms.py b/test/test_transforms.py index 4aea2bb4775..09eb5b3ca74 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -245,7 +245,7 @@ def test_nested(self): orig_env = NestedCountingEnv() env = TransformedEnv(orig_env, BinarizeReward(in_keys=[orig_env.reward_key])) env.rollout(3) - assert "data" in env._output_spec["_reward_spec"] + assert "data" in env._output_spec["full_reward_spec"] def test_transform_compose(self): torch.manual_seed(0) @@ -1934,7 +1934,7 @@ def test_double2float(self, keys, keys_inv, device): if len(keys_total) == 1 and len(keys_inv) and keys[0] == "action": action_spec = BoundedTensorSpec(0, 1, (1, 3, 3), dtype=torch.double) input_spec = CompositeSpec( - _action_spec=CompositeSpec(action=action_spec), _state_spec=None + full_action_spec=CompositeSpec(action=action_spec), full_state_spec=None ) action_spec = double2float.transform_input_spec(input_spec) assert action_spec.dtype == torch.float @@ -7162,11 +7162,11 @@ def test_insert(self): _ = env.reward_spec assert env._input_spec is not None - assert "_action_spec" in env._input_spec - assert env._input_spec["_action_spec"] is not None - assert env._output_spec["_observation_spec"] is not None - assert env._output_spec["_reward_spec"] is not None - assert env._output_spec["_done_spec"] is not None + assert "full_action_spec" in env._input_spec + assert env._input_spec["full_action_spec"] is not None + assert env._output_spec["full_observation_spec"] is not None + assert env._output_spec["full_reward_spec"] is not None + assert env._output_spec["full_done_spec"] is not None env.insert_transform(0, CatFrames(N=4, dim=-1, in_keys=[key])) diff --git a/torchrl/collectors/collectors.py b/torchrl/collectors/collectors.py index de5b4c9a075..75036c01f7e 100644 --- a/torchrl/collectors/collectors.py +++ b/torchrl/collectors/collectors.py @@ -36,12 +36,13 @@ VERBOSE, ) from torchrl.collectors.utils import split_trajectories -from torchrl.data.tensor_specs import TensorSpec +from torchrl.data.tensor_specs import CompositeSpec, TensorSpec from torchrl.data.utils import CloudpickleWrapper, DEVICE_TYPING from torchrl.envs.common import EnvBase from torchrl.envs.transforms import StepCounter, TransformedEnv from torchrl.envs.utils import ( _convert_exploration_type, + _replace_last, ExplorationType, set_exploration_type, step_mdp, @@ -78,7 +79,10 @@ def __init__(self, action_spec: TensorSpec, action_key: NestedKey = "action"): self.action_key = action_key def __call__(self, td: TensorDictBase) -> TensorDictBase: - return td.set(self.action_key, self.action_spec.rand()) + if isinstance(self.action_spec, CompositeSpec): + return td.update(self.action_spec.rand()) + else: + return td.set(self.action_key, self.action_spec.rand()) class _Interruptor: @@ -210,7 +214,7 @@ def _get_policy_and_device( raise ValueError( "env must be provided to _get_policy_and_device if policy is None" ) - policy = RandomPolicy(self.env.action_spec, self.env.action_key) + policy = RandomPolicy(self.env.input_spec["full_action_spec"]) elif isinstance(policy, nn.Module): # TODO: revisit these checks when we have determined whether arbitrary # callables should be supported as policies. @@ -245,7 +249,7 @@ def _get_policy_and_device( if not hasattr(self, "env") or self.env is None: out_keys = ["action"] else: - out_keys = [self.env.action_key] + out_keys = self.env.action_keys output = policy(**next_observation) if isinstance(output, tuple): @@ -791,38 +795,59 @@ def iterator(self) -> Iterator[TensorDictBase]: break def _step_and_maybe_reset(self) -> None: - done = self._tensordict.get(("next", self.env.done_key)) - truncated = self._tensordict.get(("next", "truncated"), None) + + any_done = False + done_map = {} + for done_key in self.env.done_keys: + done = self._tensordict.get(("next", done_key)) + truncated = self._tensordict.get( + ("next", _replace_last(done_key, "truncated")), + None, + ) + done = (done | truncated) if truncated is not None else done + any_sub_done = done.any().item() + if any_sub_done and self.reset_when_done: + # Add this done to the map, we will need it to reset + done_map.update({done_key: done.clone()}) + any_done += any_sub_done self._tensordict = step_mdp( self._tensordict, - reward_key=self.env.reward_key, - done_key=self.env.done_key, - action_key=self.env.action_key, + reward_keys=self.env.reward_keys, + done_keys=self.env.done_keys, + action_keys=self.env.action_keys, ) if not self.reset_when_done: return - done_or_terminated = ( - (done | truncated) if truncated is not None else done.clone() - ) - if done_or_terminated.any(): + if any_done: traj_ids = self._tensordict.get(("collector", "traj_ids")) traj_ids = traj_ids.clone() # collectors do not support passing other tensors than `"_reset"` # to `reset()`. - _reset = done_or_terminated - td_reset = self._tensordict.select().set("_reset", _reset) + td_reset = self._tensordict.select(*done_map.keys()) + for done_key, done in done_map.items(): + td_reset.set(_replace_last(done_key, "_reset"), done) + del td_reset[done_key] td_reset = self.env.reset(td_reset) - td_reset.del_("_reset") - traj_done_or_terminated = done_or_terminated.sum( - tuple(range(self._tensordict.batch_dims, done_or_terminated.ndim)), - dtype=torch.bool, - ) + for done_key in done_map.keys(): + del td_reset[_replace_last(done_key, "_reset")] + + traj_done_or_terminated = torch.stack( + [ + done.sum( + tuple(range(self._tensordict.batch_dims, done.ndim)), + dtype=torch.bool, + ) + for done in done_map.values() + ], + dim=0, + ).any(0) + if td_reset.batch_dims: # better cloning here than when passing the td for stacking - # cloning is necessary to avoid modifying dones in-place + # cloning is necessary to avoid modifying entries in-place self._tensordict = self._tensordict.clone() self._tensordict[traj_done_or_terminated] = td_reset[ traj_done_or_terminated @@ -830,11 +855,6 @@ def _step_and_maybe_reset(self) -> None: else: self._tensordict.update(td_reset) - done = self._tensordict.get(self.env.done_key) - if done.any(): - raise RuntimeError( - f"Env {self.env} was done after reset on specified '_reset' dimensions. This is (currently) not allowed." - ) traj_ids[traj_done_or_terminated] = traj_ids.max() + torch.arange( 1, traj_done_or_terminated.sum() + 1, device=traj_ids.device ) diff --git a/torchrl/data/utils.py b/torchrl/data/utils.py index 5add739b589..5c2dd863848 100644 --- a/torchrl/data/utils.py +++ b/torchrl/data/utils.py @@ -222,6 +222,22 @@ def contains_lazy_spec(spec: TensorSpec) -> bool: return False +def _check_only_one_entry( + spec: CompositeSpec, + error: RuntimeError, + recursive: bool = True, +): + found_entry = False + for value in spec.values(): + if isinstance(value, CompositeSpec): + _check_only_one_entry(value, error, recursive) + else: + if not found_entry: + found_entry = True + else: + raise error + + class CloudpickleWrapper(object): """A wrapper for functions that allow for serialization in multiprocessed settings.""" diff --git a/torchrl/envs/common.py b/torchrl/envs/common.py index bec19f3de7b..2e4ae1fe11d 100644 --- a/torchrl/envs/common.py +++ b/torchrl/envs/common.py @@ -7,13 +7,14 @@ import abc from copy import deepcopy -from typing import Any, Callable, Dict, Iterator, Optional, Union +from typing import Any, Callable, Dict, Iterator, List, Optional, Union import numpy as np import torch import torch.nn as nn +from tensordict import unravel_key from tensordict.tensordict import TensorDictBase - +from tensordict.utils import NestedKey from torchrl._utils import prod, seed_generator from torchrl.data.tensor_specs import ( @@ -22,8 +23,13 @@ TensorSpec, UnboundedContinuousTensorSpec, ) -from torchrl.data.utils import DEVICE_TYPING -from torchrl.envs.utils import get_available_libraries, step_mdp +from torchrl.data.utils import _check_only_one_entry, DEVICE_TYPING +from torchrl.envs.utils import ( + _replace_last, + DONE_AFTER_RESET_ERROR, + get_available_libraries, + step_mdp, +) LIBRARIES = get_available_libraries() @@ -77,7 +83,12 @@ def specs(self, value: CompositeSpec): @staticmethod def metadata_from_env(env) -> EnvMetaData: tensordict = env.fake_tensordict().clone() - tensordict.set("_reset", torch.zeros_like(tensordict.get(env.done_key))) + + for done_key in env.done_keys: + tensordict.set( + _replace_last(done_key, "_reset"), + torch.zeros_like(tensordict.get(("next", done_key))), + ) specs = env.specs.to("cpu") @@ -121,62 +132,6 @@ def to(self, device: DEVICE_TYPING) -> EnvMetaData: class EnvBase(nn.Module, metaclass=abc.ABCMeta): """Abstract environment parent class. - Properties: - observation_spec (CompositeSpec): sampling spec of the observations. Must be a - :class:`torchrl.data.CompositeSpec` instance. The keys listed in the - spec are directly accessible after reset. - In TorchRL, even though they are not properly speaking "observations" - all info, states, results of transforms etc. are stored in the - observation_spec. Therefore, "observation_spec" should be thought as - a generic data container for environment outputs that are not done - or reward data. - reward_spec (TensorSpec): the (leaf) spec of the reward. If the reward - is nested within a tensordict, its location can be accessed via - the ``reward_key`` attribute: - - >>> # accessing reward spec: - >>> reward_spec = env.reward_spec - >>> reward_spec = env.output_spec['_reward_spec'][env.reward_key] - >>> # accessing reward: - >>> reward = env.fake_tensordict()[('next', *env.reward_key)] - - done_spec (TensorSpec): the (leaf) spec of the done. If the done - is nested within a tensordict, its location can be accessed via - the ``done_key`` attribute. - - >>> # accessing done spec: - >>> done_spec = env.done_spec - >>> done_spec = env.output_spec['_done_spec'][env.done_key] - >>> # accessing done: - >>> done = env.fake_tensordict()[('next', *env.done_key)] - - action_spec (TensorSpec): the ampling spec of the actions. This attribute - is contained in input_spec. - - >>> # accessing action spec: - >>> action_spec = env.action_spec - >>> action_spec = env.input_spec['_action_spec'][env.action_key] - >>> # accessing action: - >>> action = env.fake_tensordict()[env.action_key] - - output_spec (CompositeSpec): The container for all output specs (reward, - done and observation). - input_spec (CompositeSpec): the container for all input specs (actions - and possibly others). - batch_size (torch.Size): number of environments contained in the instance; - device (torch.device): device where the env input and output are expected to live - run_type_checks (bool): if ``True``, the observation and reward dtypes - will be compared against their respective spec and an exception - will be raised if they don't match. - Defaults to False. - - .. note:: - The usage of ``done_key``, ``reward_key`` and ``action_key`` is aimed at - facilitating the custom placement of done, reward and action data within - the tensordict structures produced and read by the environment. - In most cases, these attributes can be ignored and the default values - (``"done"``, ``"reward"`` and ``"action"``) can be used. - Methods: step (TensorDictBase -> TensorDictBase): step in the environment reset (TensorDictBase, optional -> TensorDictBase): reset the environment @@ -192,14 +147,16 @@ class EnvBase(nn.Module, metaclass=abc.ABCMeta): torch.Size([]) >>> env.input_spec CompositeSpec( - action: BoundedTensorSpec( - shape=torch.Size([1]), - space=ContinuousBox( - minimum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True)), - device=cpu, - dtype=torch.float32, - domain=continuous), device=cpu, shape=torch.Size([])) + full_state_spec: None, + full_action_spec: CompositeSpec( + action: BoundedTensorSpec( + shape=torch.Size([1]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous), device=cpu, shape=torch.Size([])), device=cpu, shape=torch.Size([])) >>> env.action_spec BoundedTensorSpec( shape=torch.Size([1]), @@ -236,7 +193,14 @@ class EnvBase(nn.Module, metaclass=abc.ABCMeta): >>> # the output_spec contains all the expected outputs >>> env.output_spec CompositeSpec( - observation: CompositeSpec( + full_reward_spec: CompositeSpec( + reward: UnboundedContinuousTensorSpec( + shape=torch.Size([1]), + space=None, + device=cpu, + dtype=torch.float32, + domain=continuous), device=cpu, shape=torch.Size([])), + full_observation_spec: CompositeSpec( observation: BoundedTensorSpec( shape=torch.Size([3]), space=ContinuousBox( @@ -245,14 +209,7 @@ class EnvBase(nn.Module, metaclass=abc.ABCMeta): device=cpu, dtype=torch.float32, domain=continuous), device=cpu, shape=torch.Size([])), - reward: CompositeSpec( - reward: UnboundedContinuousTensorSpec( - shape=torch.Size([1]), - space=None, - device=cpu, - dtype=torch.float32, - domain=continuous), device=cpu, shape=torch.Size([])), - done: CompositeSpec( + full_done_spec: CompositeSpec( done: DiscreteTensorSpec( shape=torch.Size([1]), space=DiscreteBox(n=2), @@ -269,9 +226,9 @@ def __init__( batch_size: Optional[torch.Size] = None, run_type_checks: bool = False, ): - self.__dict__["_done_key"] = None - self.__dict__["_reward_key"] = None - self.__dict__["_action_key"] = None + self.__dict__["_done_keys"] = None + self.__dict__["_reward_keys"] = None + self.__dict__["_action_keys"] = None if device is not None: self.__dict__["_device"] = torch.device(device) output_spec = self.__dict__.get("_output_spec", None) @@ -323,7 +280,15 @@ def __new__(cls, *args, _inplace_update=False, _batch_locked=True, **kwargs): return super().__new__(cls) def __setattr__(self, key, value): - if key in ("_input_spec", "_observation_spec", "_action_spec", "_reward_spec"): + if key in ( + "_input_spec", + "_observation_spec", + "_action_spec", + "_reward_spec", + "_output_spec", + "_state_spec", + "_done_spec", + ): raise AttributeError( "To set an environment spec, please use `env.observation_spec = obs_spec` (without the leading" " underscore)." @@ -332,7 +297,7 @@ def __setattr__(self, key, value): @property def batch_locked(self) -> bool: - """Whether the environnement can be used with a batch size different from the one it was initialized with or not. + """Whether the environment can be used with a batch size different from the one it was initialized with or not. If True, the env needs to be used with a tensordict having the same batch size as the env. batch_locked is an immutable property. @@ -398,10 +363,40 @@ def ndim(self): # Parent specs: input and output spec. @property def input_spec(self) -> TensorSpec: + """Input spec. + + The composite spec containing all specs for data input to the environments. + + It contains: + + - "full_action_spec": the spec of the input actions + - "full_state_spec": the spec of all other environment inputs + + This attibute is locked and should be read-only. + Instead, to set the specs contained in it, use the respective properties. + + Examples: + >>> from torchrl.envs.libs.gym import GymEnv + >>> env = GymEnv("Pendulum-v1") + >>> env.input_spec + CompositeSpec( + full_state_spec: None, + full_action_spec: CompositeSpec( + action: BoundedTensorSpec( + shape=torch.Size([1]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous), device=cpu, shape=torch.Size([])), device=cpu, shape=torch.Size([])) + + + """ input_spec = self.__dict__.get("_input_spec", None) if input_spec is None: input_spec = CompositeSpec( - _state_spec=None, + full_state_spec=None, shape=self.batch_size, device=self.device, ).lock_() @@ -414,6 +409,50 @@ def input_spec(self, value: TensorSpec) -> None: @property def output_spec(self) -> TensorSpec: + """Output spec. + + The composite spec containing all specs for data output from the environments. + + It contains: + + - "full_reward_spec": the spec of reward + - "full_done_spec": the spec of done + - "full_observation_spec": the spec of all other environment outputs + + This attibute is locked and should be read-only. + Instead, to set the specs contained in it, use the respective properties. + + Examples: + >>> from torchrl.envs.libs.gym import GymEnv + >>> env = GymEnv("Pendulum-v1") + >>> env.output_spec + CompositeSpec( + full_reward_spec: CompositeSpec( + reward: UnboundedContinuousTensorSpec( + shape=torch.Size([1]), + space=None, + device=cpu, + dtype=torch.float32, + domain=continuous), device=cpu, shape=torch.Size([])), + full_observation_spec: CompositeSpec( + observation: BoundedTensorSpec( + shape=torch.Size([3]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous), device=cpu, shape=torch.Size([])), + full_done_spec: CompositeSpec( + done: DiscreteTensorSpec( + shape=torch.Size([1]), + space=DiscreteBox(n=2), + device=cpu, + dtype=torch.bool, + domain=discrete), device=cpu, shape=torch.Size([])), device=cpu, shape=torch.Size([])) + + + """ output_spec = self.__dict__.get("_output_spec", None) if output_spec is None: output_spec = CompositeSpec( @@ -428,60 +467,133 @@ def output_spec(self, value: TensorSpec) -> None: raise RuntimeError("output_spec is protected.") # Action spec - def _get_action_key(self): - keys = self.input_spec["_action_spec"].keys(True, True) - for key in keys: - # the first key is the action - if not isinstance(key, tuple): - key = (key,) - break - else: + def _get_action_keys(self): + keys = self.input_spec["full_action_spec"].keys(True, True) + if not len(keys): raise AttributeError("Could not find action spec") - self.__dict__["_action_key"] = key - return key + keys = list(keys) + self.__dict__["_action_keys"] = keys + return keys @property - def action_key(self): - """The action key of an environment. + def action_keys(self) -> List[NestedKey]: + """The action keys of an environment. - By default, non-nested keys are stored in the 'action' key. - - If the action is in a nested tensordict, this property will return its - location. + By default, there will only be one key named "action". """ - out = self._action_key + out = self._action_keys if out is None: - out = self._get_action_key() + out = self._get_action_keys() return out + @property + def action_key(self) -> NestedKey: + """The action key of an environment. + + By default, this will be "action". + + If there is more than one action key in the environment, this function will raise an exception. + """ + if len(self.action_keys) > 1: + raise KeyError( + "action_key requested but more than one key present in the environment" + ) + return self.action_keys[0] + # Action spec: action specs belong to input_spec @property def action_spec(self) -> TensorSpec: - """The ``action`` leaf spec. + """The ``action`` spec. - This property will always return the leaf spec of the action attribute, - which can be accessed in a typical rollout via + The ``action_spec`` is always stored as a composite spec. - >>> fake_td = env.fake_tensordict() # a typical tensordict - >>> action = fake_td[env.action_key] + If the action spec is provided as a simple spec, this will be returned. + + >>> env.action_spec = UnboundedContinuousTensorSpec(1) + >>> env.action_spec + UnboundedContinuousTensorSpec( + shape=torch.Size([1]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous) + + If the action spec is provided as a composite spec and contains only one leaf, + this function will return just the leaf. + + >>> env.action_spec = CompositeSpec({"nested": {"action": UnboundedContinuousTensorSpec(1)}}) + >>> env.action_spec + UnboundedContinuousTensorSpec( + shape=torch.Size([1]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous) + + If the action spec is provided as a composite spec and has more than one leaf, + this function will return the whole spec. + + >>> env.action_spec = CompositeSpec({"nested": {"action": UnboundedContinuousTensorSpec(1), "another_action": DiscreteTensorSpec(1)}}) + >>> env.action_spec + CompositeSpec( + nested: CompositeSpec( + action: UnboundedContinuousTensorSpec( + shape=torch.Size([1]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous), + another_action: DiscreteTensorSpec( + shape=torch.Size([]), + space=DiscreteBox(n=1), + device=cpu, + dtype=torch.int64, + domain=discrete), device=cpu, shape=torch.Size([])), device=cpu, shape=torch.Size([])) + + To retrieve the full spec passed, use: + + >>> env.input_spec["full_action_spec"] This property is mutable. + + Examples: + >>> from torchrl.envs.libs.gym import GymEnv + >>> env = GymEnv("Pendulum-v1") + >>> env.action_spec + BoundedTensorSpec( + shape=torch.Size([1]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous) """ try: - action_spec = self.input_spec["_action_spec"] + action_spec = self.input_spec["full_action_spec"] except (KeyError, AttributeError): raise KeyError("Failed to find the action_spec.") - try: - out = action_spec[self.action_key] - except KeyError: - # the key may have changed - raise KeyError( - "The action_key attribute seems to have changed. " - "This occurs when a action_spec is updated without " - "calling `env.action_spec = new_spec`. " - "Make sure you rely on this type of command " - "to set the action and other specs." - ) + + if len(self.action_keys) > 1: + out = action_spec + else: + try: + out = action_spec[self.action_key] + except KeyError: + # the key may have changed + raise KeyError( + "The action_key attribute seems to have changed. " + "This occurs when a action_spec is updated without " + "calling `env.action_spec = new_spec`. " + "Make sure you rely on this type of command " + "to set the action and other specs." + ) return out @@ -491,9 +603,17 @@ def action_spec(self, value: TensorSpec) -> None: self.input_spec.unlock_() device = self.input_spec.device try: - delattr(self, "_action_key") + delattr(self, "_action_keys") except AttributeError: pass + if not hasattr(value, "shape"): + raise TypeError( + f"action_spec of type {type(value)} do not have a shape attribute." + ) + if value.shape[: len(self.batch_size)] != self.batch_size: + raise ValueError( + "The value of spec.shape must match the env batch size." + ) if isinstance(value, CompositeSpec): for _ in value.values(True, True): # noqa: B007 @@ -508,64 +628,134 @@ def action_spec(self, value: TensorSpec) -> None: action=value.to(device), shape=self.batch_size, device=device ) - self.input_spec["_action_spec"] = value.to(device) - self._get_action_key() + self.input_spec["full_action_spec"] = value.to(device) + self._get_action_keys() finally: self.input_spec.lock_() # Reward spec - def _get_reward_key(self): - keys = self.output_spec["_reward_spec"].keys(True, True) - for key in keys: - # the first key is the reward - if not isinstance(key, tuple): - key = (key,) - break - else: + def _get_reward_keys(self): + keys = self.output_spec["full_reward_spec"].keys(True, True) + if not len(keys): raise AttributeError("Could not find reward spec") - self.__dict__["_reward_key"] = key - return key + keys = list(keys) + self.__dict__["_reward_keys"] = keys + return keys + + @property + def reward_keys(self) -> List[NestedKey]: + """The reward keys of an environment. + + By default, there will only be one key named "reward". + """ + out = self._reward_keys + if out is None: + out = self._get_reward_keys() + return out @property def reward_key(self): """The reward key of an environment. - By default, non-nested keys are stored in the ``'reward'`` entry. + By default, this will be "reward". - If the reward is in a nested tensordict, this property will return its - location. + If there is more than one reward key in the environment, this function will raise an exception. """ - out = self._reward_key - if out is None: - out = self._get_reward_key() - return out + if len(self.reward_keys) > 1: + raise KeyError( + "reward_key requested but more than one key present in the environment" + ) + return self.reward_keys[0] - # Done spec: reward specs belong to output_spec + # Reward spec: reward specs belong to output_spec @property def reward_spec(self) -> TensorSpec: - """The ``reward`` leaf spec. + """The ``reward`` spec. + + The ``reward_spec`` is always stored as a composite spec. + + If the reward spec is provided as a simple spec, this will be returned. - This property will always return the leaf spec of the reward attribute, - which can be accessed in a typical rollout via + >>> env.reward_spec = UnboundedContinuousTensorSpec(1) + >>> env.reward_spec + UnboundedContinuousTensorSpec( + shape=torch.Size([1]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous) - >>> fake_td = env.fake_tensordict() # a typical tensordict - >>> reward = fake_td[("next", *env.reward_key)] + If the reward spec is provided as a composite spec and contains only one leaf, + this function will return just the leaf. + + >>> env.reward_spec = CompositeSpec({"nested": {"reward": UnboundedContinuousTensorSpec(1)}}) + >>> env.reward_spec + UnboundedContinuousTensorSpec( + shape=torch.Size([1]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous) + + If the reward spec is provided as a composite spec and has more than one leaf, + this function will return the whole spec. + + >>> env.reward_spec = CompositeSpec({"nested": {"reward": UnboundedContinuousTensorSpec(1), "another_reward": DiscreteTensorSpec(1)}}) + >>> env.reward_spec + CompositeSpec( + nested: CompositeSpec( + reward: UnboundedContinuousTensorSpec( + shape=torch.Size([1]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous), + another_reward: DiscreteTensorSpec( + shape=torch.Size([]), + space=DiscreteBox(n=1), + device=cpu, + dtype=torch.int64, + domain=discrete), device=cpu, shape=torch.Size([])), device=cpu, shape=torch.Size([])) + + To retrieve the full spec passed, use: + + >>> env.output_spec["full_reward_spec"] This property is mutable. + + Examples: + >>> from torchrl.envs.libs.gym import GymEnv + >>> env = GymEnv("Pendulum-v1") + >>> env.reward_spec + UnboundedContinuousTensorSpec( + shape=torch.Size([1]), + space=None, + device=cpu, + dtype=torch.float32, + domain=continuous) """ try: - reward_spec = self.output_spec["_reward_spec"] + reward_spec = self.output_spec["full_reward_spec"] except (KeyError, AttributeError): # populate the "reward" entry - # this will be raised if there is not _reward_spec (unlikely) or no reward_key + # this will be raised if there is not full_reward_spec (unlikely) or no reward_key # Since output_spec is lazily populated with an empty composite spec for # reward_spec, the second case is much more likely to occur. self.reward_spec = out = UnboundedContinuousTensorSpec( shape=(*self.batch_size, 1), device=self.device, ) - reward_spec = self.output_spec["_reward_spec"] - finally: + reward_spec = self.output_spec["full_reward_spec"] + + if len(self.reward_keys) > 1: + out = reward_spec + else: try: out = reward_spec[self.reward_key] except KeyError: @@ -586,7 +776,7 @@ def reward_spec(self, value: TensorSpec) -> None: self.output_spec.unlock_() device = self.output_spec.device try: - delattr(self, "_reward_key") + delattr(self, "_reward_keys") except AttributeError: pass if not hasattr(value, "shape"): @@ -599,7 +789,7 @@ def reward_spec(self, value: TensorSpec) -> None: "The value of spec.shape must match the env batch size." ) if isinstance(value, CompositeSpec): - for nestedval in value.values(True, True): # noqa: B007 + for _ in value.values(True, True): # noqa: B007 break else: raise RuntimeError( @@ -607,76 +797,137 @@ def reward_spec(self, value: TensorSpec) -> None: "This is currently not permitted." ) else: - nestedval = value value = CompositeSpec( reward=value.to(device), shape=self.batch_size, device=device ) - if len(nestedval.shape) == 0: - raise RuntimeError( - "the reward_spec shape cannot be empty (this error" - " usually comes from trying to set a reward_spec" - " with a null number of dimensions. Try using a multidimensional" - " spec instead, for instance with a singleton dimension at the tail)." - ) - self.output_spec["_reward_spec"] = value.to(device) - self._get_reward_key() + for leaf in value.values(True, True): + if len(leaf.shape) == 0: + raise RuntimeError( + "the reward_spec's leafs shape cannot be empty (this error" + " usually comes from trying to set a reward_spec" + " with a null number of dimensions. Try using a multidimensional" + " spec instead, for instance with a singleton dimension at the tail)." + ) + self.output_spec["full_reward_spec"] = value.to(device) + self._get_reward_keys() finally: self.output_spec.lock_() # done spec - def _get_done_key(self): - keys = self.output_spec["_done_spec"].keys(True, True) - for key in keys: - # the first key is the reward - if not isinstance(key, tuple): - key = (key,) - break - else: - raise AttributeError( - f"Could not find done spec: {self.output_spec['_done_spec']}" - ) - self.__dict__["_done_key"] = key - return key + def _get_done_keys(self): + keys = self.output_spec["full_done_spec"].keys(True, True) + if not len(keys): + raise AttributeError("Could not find done spec") + keys = list(keys) + self.__dict__["_done_keys"] = keys + return keys + + @property + def done_keys(self) -> List[NestedKey]: + """The done keys of an environment. + + By default, there will only be one key named "done". + """ + out = self._done_keys + if out is None: + out = self._get_done_keys() + return out @property def done_key(self): """The done key of an environment. - By default, non-nested keys are stored in the ``'done'`` entry. + By default, this will be "done". - If the done is in a nested tensordict, this property will return its - location. + If there is more than one done key in the environment, this function will raise an exception. """ - out = self._done_key - if out is None: - out = self._get_done_key() - return out + if len(self.done_keys) > 1: + raise KeyError( + "done_key requested but more than one key present in the environment" + ) + return self.done_keys[0] # Done spec: done specs belong to output_spec @property def done_spec(self) -> TensorSpec: - """The ``done`` leaf spec. + """The ``done`` spec. - This property will always return the leaf spec of the done attribute, - which can be accessed in a typical rollout via + The ``done_spec`` is always stored as a composite spec. - >>> fake_td = env.fake_tensordict() # a typical tensordict - >>> done = fake_td[("next", *env.done_key)] + If the done spec is provided as a simple spec, this will be returned. + + >>> env.done_spec = DiscreteTensorSpec(2, dtype=torch.bool) + >>> env.done_spec + DiscreteTensorSpec( + shape=torch.Size([]), + space=DiscreteBox(n=2), + device=cpu, + dtype=torch.bool, + domain=discrete) + + If the done spec is provided as a composite spec and contains only one leaf, + this function will return just the leaf. + + >>> env.done_spec = CompositeSpec({"nested": {"done": DiscreteTensorSpec(2, dtype=torch.bool)}}) + >>> env.done_spec + DiscreteTensorSpec( + shape=torch.Size([]), + space=DiscreteBox(n=2), + device=cpu, + dtype=torch.bool, + domain=discrete) + + If the done spec is provided as a composite spec and has more than one leaf, + this function will return the whole spec. + + >>> env.done_spec = CompositeSpec({"nested": {"done": DiscreteTensorSpec(2, dtype=torch.bool), "another_done": DiscreteTensorSpec(2, dtype=torch.bool)}}) + >>> env.done_spec + CompositeSpec( + nested: CompositeSpec( + done: DiscreteTensorSpec( + shape=torch.Size([]), + space=DiscreteBox(n=2), + device=cpu, + dtype=torch.bool, + domain=discrete), + another_done: DiscreteTensorSpec( + shape=torch.Size([]), + space=DiscreteBox(n=2), + device=cpu, + dtype=torch.bool, + domain=discrete), device=cpu, shape=torch.Size([])), device=cpu, shape=torch.Size([])) + + To always retrieve the full spec passed, use: + + >>> env.output_spec["full_done_spec"] This property is mutable. + + Examples: + >>> from torchrl.envs.libs.gym import GymEnv + >>> env = GymEnv("Pendulum-v1") + >>> env.done_spec + DiscreteTensorSpec( + shape=torch.Size([1]), + space=DiscreteBox(n=2), + device=cpu, + dtype=torch.bool, + domain=discrete) """ try: - done_spec = self.output_spec["_done_spec"] + done_spec = self.output_spec["full_done_spec"] except (KeyError, AttributeError): # populate the "done" entry - # this will be raised if there is not _done_spec (unlikely) or no done_key + # this will be raised if there is not full_done_spec (unlikely) or no done_key # Since output_spec is lazily populated with an empty composite spec for # done_spec, the second case is much more likely to occur. self.done_spec = DiscreteTensorSpec( n=2, shape=(*self.batch_size, 1), dtype=torch.bool, device=self.device ) - done_spec = self.output_spec["_done_spec"] - finally: + done_spec = self.output_spec["full_done_spec"] + if len(self.done_keys) > 1: + out = done_spec + else: try: out = done_spec[self.done_key] except KeyError: @@ -697,7 +948,7 @@ def done_spec(self, value: TensorSpec) -> None: self.output_spec.unlock_() device = self.output_spec.device try: - delattr(self, "_done_key") + delattr(self, "_done_keys") except AttributeError: pass if not hasattr(value, "shape"): @@ -710,40 +961,72 @@ def done_spec(self, value: TensorSpec) -> None: "The value of spec.shape must match the env batch size." ) if isinstance(value, CompositeSpec): - for nestedval in value.values(True, True): # noqa: B007 + for _ in value.values(True, True): # noqa: B007 break else: raise RuntimeError( "An empty CompositeSpec was passed for the done spec. " "This is currently not permitted." ) + _check_only_one_entry( + value, + error=RuntimeError( + "done_spec has more than one leaf entry for a CompositeSpec. " + "Only one leaf entry per composite spec is currently allowed" + ), + ) else: - nestedval = value value = CompositeSpec( done=value.to(device), shape=self.batch_size, device=device ) - if len(nestedval.shape) == 0: - raise RuntimeError( - "the done_spec shape cannot be empty (this error" - " usually comes from trying to set a done_spec" - " with a null number of dimensions. Try using a multidimensional" - " spec instead, for instance with a singleton dimension at the tail)." - ) - if len(list(value.keys())) == 0: - raise RuntimeError - self.output_spec["_done_spec"] = value.to(device) - self._get_done_key() + for leaf in value.values(True, True): + if len(leaf.shape) == 0: + raise RuntimeError( + "the done_spec's leafs shape cannot be empty (this error" + " usually comes from trying to set a reward_spec" + " with a null number of dimensions. Try using a multidimensional" + " spec instead, for instance with a singleton dimension at the tail)." + ) + self.output_spec["full_done_spec"] = value.to(device) + self._get_done_keys() finally: self.output_spec.lock_() # observation spec: observation specs belong to output_spec @property def observation_spec(self) -> CompositeSpec: - observation_spec = self.output_spec["_observation_spec"] + """Observation spec. + + Must be a :class:`torchrl.data.CompositeSpec` instance. + The keys listed in the spec are directly accessible after reset and step. + + In TorchRL, even though they are not properly speaking "observations" + all info, states, results of transforms etc. outputs from the environment are stored in the + ``observation_spec``. + + Therefore, ``"observation_spec"`` should be thought as + a generic data container for environment outputs that are not done or reward data. + + Examples: + >>> from torchrl.envs.libs.gym import GymEnv + >>> env = GymEnv("Pendulum-v1") + >>> env.observation_spec + CompositeSpec( + observation: BoundedTensorSpec( + shape=torch.Size([3]), + space=ContinuousBox( + minimum=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True), + maximum=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True)), + device=cpu, + dtype=torch.float32, + domain=continuous), device=cpu, shape=torch.Size([])) + + """ + observation_spec = self.output_spec["full_observation_spec"] if observation_spec is None: observation_spec = CompositeSpec(shape=self.batch_size, device=self.device) self.output_spec.unlock_() - self.output_spec["_observation_spec"] = observation_spec + self.output_spec["full_observation_spec"] = observation_spec self.output_spec.lock_() return observation_spec @@ -762,18 +1045,39 @@ def observation_spec(self, value: TensorSpec) -> None: raise ValueError( f"The value of spec.shape ({value.shape}) must match the env batch size ({self.batch_size})." ) - self.output_spec["_observation_spec"] = value.to(device) + self.output_spec["full_observation_spec"] = value.to(device) finally: self.output_spec.lock_() # state spec: state specs belong to input_spec @property def state_spec(self) -> CompositeSpec: - state_spec = self.input_spec["_state_spec"] + """State spec. + + Must be a :class:`torchrl.data.CompositeSpec` instance. + The keys listed here should be provided as input alongside actions to the environment. + + In TorchRL, even though they are not properly speaking "state" + all inputs to the environment that are not actions are stored in the + ``state_spec``. + + Therefore, ``"state_spec"`` should be thought as + a generic data container for environment inputs that are not action data. + + Examples: + >>> from torchrl.envs.libs.gym import GymEnv + >>> env = GymEnv("Pendulum-v1") + >>> # Gym has not state input so this is empty + >>> env.state_spec + CompositeSpec( + , device=cpu, shape=torch.Size([])) + + """ + state_spec = self.input_spec["full_state_spec"] if state_spec is None: state_spec = CompositeSpec(shape=self.batch_size, device=self.device) self.input_spec.unlock_() - self.input_spec["_state_spec"] = state_spec + self.input_spec["full_state_spec"] = state_spec self.input_spec.lock_() return state_spec @@ -782,7 +1086,7 @@ def state_spec(self, value: CompositeSpec) -> None: try: self.input_spec.unlock_() if value is None: - self.input_spec["_state_spec"] = CompositeSpec( + self.input_spec["full_state_spec"] = CompositeSpec( device=self.device, shape=self.batch_size ) else: @@ -797,7 +1101,7 @@ def state_spec(self, value: CompositeSpec) -> None: raise ValueError( f"The value of spec.shape ({value.shape}) must match the env batch size ({self.batch_size})." ) - self.input_spec["_state_spec"] = value.to(device) + self.input_spec["full_state_spec"] = value.to(device) finally: self.input_spec.lock_() @@ -837,7 +1141,6 @@ def step(self, tensordict: TensorDictBase) -> TensorDictBase: ) # TODO: Refactor this using reward spec - reward = next_tensordict_out.get(self.reward_key) # unsqueeze rewards if needed # the input tensordict may have more leading dimensions than the batch_size # e.g. in model-based contexts. @@ -848,22 +1151,33 @@ def step(self, tensordict: TensorDictBase) -> TensorDictBase: if dims else next_tensordict_out.shape ) - expected_reward_shape = torch.Size( - [*leading_batch_size, *self.reward_spec.shape] - ) - actual_reward_shape = reward.shape - if actual_reward_shape != expected_reward_shape: - reward = reward.view(expected_reward_shape) - next_tensordict_out.set(self.reward_key, reward) + for reward_key in self.reward_keys: + reward = next_tensordict_out.get(reward_key) + expected_reward_shape = torch.Size( + [ + *leading_batch_size, + *self.output_spec["full_reward_spec"][reward_key].shape, + ] + ) + actual_reward_shape = reward.shape + if actual_reward_shape != expected_reward_shape: + reward = reward.view(expected_reward_shape) + next_tensordict_out.set(reward_key, reward) # TODO: Refactor this using done spec - done = next_tensordict_out.get(self.done_key) - # unsqueeze done if needed - expected_done_shape = torch.Size([*leading_batch_size, *self.done_spec.shape]) - actual_done_shape = done.shape - if actual_done_shape != expected_done_shape: - done = done.view(expected_done_shape) - next_tensordict_out.set(self.done_key, done) + for done_key in self.done_keys: + done = next_tensordict_out.get(done_key) + expected_done_shape = torch.Size( + [ + *leading_batch_size, + *self.output_spec[unravel_key(("full_done_spec", done_key))].shape, + ] + ) + actual_done_shape = done.shape + if actual_done_shape != expected_done_shape: + done = done.view(expected_done_shape) + next_tensordict_out.set(done_key, done) + tensordict_out.set("next", next_tensordict_out) if self.run_type_checks: @@ -871,19 +1185,26 @@ def step(self, tensordict: TensorDictBase) -> TensorDictBase: obs = tensordict_out.get(key) self.observation_spec.type_check(obs, key) - if ( - next_tensordict_out.get(self.reward_key).dtype - is not self.reward_spec.dtype - ): - raise TypeError( - f"expected reward.dtype to be {self.reward_spec.dtype} " - f"but got {tensordict_out.get(self.reward_key).dtype}" - ) + for reward_key in self.reward_keys: + if ( + next_tensordict_out.get(reward_key).dtype + is not self.output_spec[ + unravel_key(("full_reward_spec", reward_key)) + ].dtype + ): + raise TypeError( + f"expected reward.dtype to be {self.output_spec[unravel_key(('full_reward_spec',reward_key))]} " + f"but got {tensordict_out.get(reward_key).dtype}" + ) - if next_tensordict_out.get(self.done_key).dtype is not self.done_spec.dtype: - raise TypeError( - f"expected done.dtype to be torch.bool but got {tensordict_out.get(self.done_key).dtype}" - ) + for done_key in self.done_keys: + if ( + next_tensordict_out.get(done_key).dtype + is not self.output_spec["full_done_spec"].get(done_key).dtype + ): + raise TypeError( + f"expected done.dtype to be torch.bool but got {next_tensordict_out.get(done_key).dtype}" + ) # tensordict could already have a "next" key tensordict.update(tensordict_out) @@ -931,15 +1252,26 @@ def reset( a tensordict (or the input tensordict, if any), modified in place with the resulting observations. """ - if tensordict is not None and "_reset" in tensordict.keys(): + if tensordict is not None: self._assert_tensordict_shape(tensordict) - _reset = tensordict.get("_reset") - if _reset.shape[-len(self.done_spec.shape) :] != self.done_spec.shape: - raise RuntimeError( - "_reset flag in tensordict should follow env.done_spec" - ) + _reset_map = {} + for done_key in self.done_keys: + _reset_key = _replace_last(done_key, "_reset") + _reset = tensordict.get(_reset_key, default=None) + if _reset is None: + continue + if ( + _reset.shape[ + -len(self.output_spec["full_done_spec"][done_key].shape) : + ] + != self.output_spec["full_done_spec"][done_key].shape + ): + raise RuntimeError( + "_reset flag in tensordict should follow env.done_spec" + ) + _reset_map.update({done_key: _reset}) else: - _reset = None + _reset_map = {} tensordict_reset = self._reset(tensordict, **kwargs) if tensordict_reset.device != self.device: @@ -959,20 +1291,23 @@ def reset( leading_dim = tensordict_reset.shape[: -len(self.batch_size)] else: leading_dim = tensordict_reset.shape - if self.done_spec is not None and self.done_key not in tensordict_reset.keys( - True, True - ): - tensordict_reset.set( - self.done_key, - self.done_spec.zero(leading_dim), - ) + if self.done_spec is not None: + td_reset_keys = tensordict_reset.keys(True, True) + for done_key in self.done_keys: + if done_key not in td_reset_keys: + tensordict_reset.set( + done_key, + self.output_spec["full_done_spec"][done_key].zero(leading_dim), + ) + + for done_key in self.done_keys: + if done_key not in _reset_map: + if tensordict_reset.get(done_key).any(): + raise DONE_AFTER_RESET_ERROR + else: + if tensordict_reset.get(done_key)[_reset_map[done_key]].any(): + raise DONE_AFTER_RESET_ERROR - if (_reset is None and tensordict_reset.get(self.done_key).any()) or ( - _reset is not None and tensordict_reset.get(self.done_key)[_reset].any() - ): - raise RuntimeError( - f"Env {self} was done after reset on specified '_reset' dimensions. This is (currently) not allowed." - ) if tensordict is not None: tensordict.update(tensordict_reset) else: @@ -1044,7 +1379,7 @@ def rand_action(self, tensordict: Optional[TensorDictBase] = None): f"Non batch-locked environment require the env batch-size to be either empty or to" f" match the tensordict one." ) - r = self.input_spec["_action_spec"].rand(shape) + r = self.input_spec["full_action_spec"].rand(shape) if tensordict is None: return r tensordict.update(r) @@ -1238,28 +1573,40 @@ def policy(td): tensordict = self.step(tensordict) tensordicts.append(tensordict.clone(False)) - done = tensordict.get(("next", self.done_key)) - truncated = tensordict.get( - ("next", "truncated"), - default=torch.zeros((), device=done.device, dtype=torch.bool), - ) - done = done | truncated - if (break_when_any_done and done.any()) or i == max_steps - 1: + + any_done = False + _reset_map = {} + for done_key in self.done_keys: + done = tensordict.get(("next", done_key)) + truncated = tensordict.get( + ("next", _replace_last(done_key, "truncated")), + default=torch.zeros((), device=done.device, dtype=torch.bool), + ) + done = done | truncated + any_sub_done = done.any().item() + if any_sub_done and not break_when_any_done: + # Add this done to the map, we will need it to reset + _reset_map.update({_replace_last(done_key, "_reset"): done}) + any_done += any_sub_done + + if (break_when_any_done and any_done) or i == max_steps - 1: break tensordict = step_mdp( tensordict, keep_other=True, exclude_action=False, exclude_reward=True, - reward_key=self.reward_key, - action_key=self.action_key, - done_key=self.done_key, + reward_keys=self.reward_keys, + action_keys=self.action_keys, + done_keys=self.done_keys, ) - if not break_when_any_done and done.any(): - _reset = done.clone() - tensordict.set("_reset", _reset) + + if not break_when_any_done and any_done: + for _reset_key, done in _reset_map.items(): + tensordict.set(_reset_key, done.clone()) self.reset(tensordict) - del tensordict["_reset"] + for _reset_key in _reset_map.keys(): + del tensordict[_reset_key] if callback is not None: callback(self, tensordict) @@ -1306,13 +1653,13 @@ def fake_tensordict(self) -> TensorDictBase: """Returns a fake tensordict with key-value pairs that match in shape, device and dtype what can be expected during an environment rollout.""" state_spec = self.state_spec observation_spec = self.observation_spec - action_spec = self.input_spec["_action_spec"] + action_spec = self.input_spec["full_action_spec"] # instantiates reward_spec if needed _ = self.reward_spec - reward_spec = self.output_spec["_reward_spec"] + reward_spec = self.output_spec["full_reward_spec"] # instantiates done_spec if needed _ = self.done_spec - done_spec = self.output_spec["_done_spec"] + done_spec = self.output_spec["full_done_spec"] fake_obs = observation_spec.zero() diff --git a/torchrl/envs/libs/isaacgym.py b/torchrl/envs/libs/isaacgym.py index 6e7f47df189..fa613561681 100644 --- a/torchrl/envs/libs/isaacgym.py +++ b/torchrl/envs/libs/isaacgym.py @@ -64,7 +64,7 @@ def _make_specs(self, env: "gym.Env") -> None: # noqa: F821 obs_spec.unlock_() obs_spec.update(specs) obs_spec.lock_() - self.__dict__["_observation_spec"] = obs_spec + self.__dict__["full_observation_spec"] = obs_spec @classmethod def _make_envs(cls, *, task, num_envs, device, seed=None, headless=True, **kwargs): diff --git a/torchrl/envs/transforms/rlhf.py b/torchrl/envs/transforms/rlhf.py index 51b8104b4ea..8ac57bc20ed 100644 --- a/torchrl/envs/transforms/rlhf.py +++ b/torchrl/envs/transforms/rlhf.py @@ -191,23 +191,23 @@ def transform_output_spec(self, output_spec: CompositeSpec) -> CompositeSpec: parent = self.parent reward_spec = UnboundedContinuousTensorSpec( device=output_spec.device, - shape=output_spec["_reward_spec"][parent.reward_key].shape, + shape=output_spec["full_reward_spec"][parent.reward_key].shape, ) - output_spec["_reward_spec"] = CompositeSpec( + output_spec["full_reward_spec"] = CompositeSpec( {parent.reward_key: reward_spec}, - shape=output_spec["_reward_spec"].shape, + shape=output_spec["full_reward_spec"].shape, ) elif in_key == "reward": parent = self.parent reward_spec = UnboundedContinuousTensorSpec( device=output_spec.device, - shape=output_spec["_reward_spec"][parent.reward_key].shape, + shape=output_spec["full_reward_spec"][parent.reward_key].shape, ) # then we need to populate the output keys - observation_spec = output_spec["_observation_spec"] + observation_spec = output_spec["full_observation_spec"] observation_spec[out_key] = reward_spec else: - observation_spec = output_spec["_observation_spec"] + observation_spec = output_spec["full_observation_spec"] reward_spec = UnboundedContinuousTensorSpec( device=output_spec.device, shape=observation_spec[in_key].shape ) diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index 4687884834e..01743f65c18 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -92,8 +92,8 @@ def _apply_to_composite_inv(function): # tensor is not updated) an out_key that does not match the in_key has # no effect on the spec. def new_fun(self, input_spec): - action_spec = input_spec["_action_spec"].clone() - state_spec = input_spec["_state_spec"] + action_spec = input_spec["full_action_spec"].clone() + state_spec = input_spec["full_state_spec"] if state_spec is None: state_spec = CompositeSpec(shape=input_spec.shape, device=input_spec.device) else: @@ -107,8 +107,8 @@ def new_fun(self, input_spec): elif in_key in state_spec.keys(True, True): state_spec[out_key] = function(self, state_spec[in_key].clone()) return CompositeSpec( - _state_spec=state_spec, - _action_spec=action_spec, + full_state_spec=state_spec, + full_action_spec=action_spec, shape=input_spec.shape, device=input_spec.device, ) @@ -272,7 +272,7 @@ def transform_output_spec(self, output_spec: CompositeSpec) -> CompositeSpec: """Transforms the output spec such that the resulting spec matches transform mapping. This method should generally be left untouched. Changes should be implemented using - :meth:`~.transform_observation_spec`, :meth:`~.transform_reward_spec` and :meth:`~.transform_done_spec`. + :meth:`~.transform_observation_spec`, :meth:`~.transform_reward_spec` and :meth:`~.transformfull_done_spec`. Args: output_spec (TensorSpec): spec before the transform @@ -281,16 +281,16 @@ def transform_output_spec(self, output_spec: CompositeSpec) -> CompositeSpec: """ output_spec = output_spec.clone() - output_spec["_observation_spec"] = self.transform_observation_spec( - output_spec["_observation_spec"] + output_spec["full_observation_spec"] = self.transform_observation_spec( + output_spec["full_observation_spec"] ) - if "_reward_spec" in output_spec.keys(): - output_spec["_reward_spec"] = self.transform_reward_spec( - output_spec["_reward_spec"] + if "full_reward_spec" in output_spec.keys(): + output_spec["full_reward_spec"] = self.transform_reward_spec( + output_spec["full_reward_spec"] ) - if "_done_spec" in output_spec.keys(): - output_spec["_done_spec"] = self.transform_done_spec( - output_spec["_done_spec"] + if "full_done_spec" in output_spec.keys(): + output_spec["full_done_spec"] = self.transform_done_spec( + output_spec["full_done_spec"] ) return output_spec @@ -575,11 +575,6 @@ def output_spec(self) -> TensorSpec: output_spec = self.__dict__.get("_output_spec", None) return output_spec - @property - def action_spec(self) -> TensorSpec: - """Action spec of the transformed environment.""" - return self.input_spec[("_action_spec", *self.action_key)] - @property def input_spec(self) -> TensorSpec: """Action spec of the transformed environment.""" @@ -594,32 +589,6 @@ def input_spec(self) -> TensorSpec: input_spec = self.__dict__.get("_input_spec", None) return input_spec - @property - def reward_spec(self) -> TensorSpec: - """Reward spec of the transformed environment.""" - return self.output_spec[("_reward_spec", *self.reward_key)] - - @property - def observation_spec(self) -> TensorSpec: - """Observation spec of the transformed environment.""" - observation_spec = self.output_spec["_observation_spec"] - if observation_spec is None: - observation_spec = CompositeSpec(device=self.device, shape=self.batch_size) - return observation_spec - - @property - def state_spec(self) -> TensorSpec: - """State spec of the transformed environment.""" - state_spec = self.input_spec["_state_spec"] - if state_spec is None: - state_spec = CompositeSpec(device=self.device, shape=self.batch_size) - return state_spec - - @property - def done_spec(self) -> TensorSpec: - """Done spec of the transformed environment.""" - return self.output_spec[("_done_spec", *self.done_key)] - def _step(self, tensordict: TensorDictBase) -> TensorDictBase: tensordict = tensordict.clone(False) tensordict_in = self.transform.inv(tensordict) @@ -2553,8 +2522,8 @@ def _transform_spec(self, spec: TensorSpec) -> None: def transform_input_spec(self, input_spec: TensorSpec) -> TensorSpec: if self._keys_inv_unset: self._set_in_keys() - action_spec = input_spec["_action_spec"] - state_spec = input_spec["_state_spec"] + action_spec = input_spec["full_action_spec"] + state_spec = input_spec["full_state_spec"] for key in self.in_keys_inv: if key in action_spec.keys(True): _spec = action_spec @@ -2966,8 +2935,8 @@ def _inv_apply_transform(self, action: torch.Tensor) -> torch.Tensor: def transform_input_spec(self, input_spec: CompositeSpec): input_spec = input_spec.clone() - for key in input_spec["_action_spec"].keys(True, True): - key = ("_action_spec", key) + for key in input_spec["full_action_spec"].keys(True, True): + key = ("full_action_spec", key) break else: raise KeyError("key not found in action_spec.") @@ -3896,8 +3865,8 @@ def transform_input_spec(self, input_spec: CompositeSpec) -> CompositeSpec: raise ValueError( f"input_spec was expected to be of type CompositeSpec. Got {type(input_spec)} instead." ) - if input_spec["_state_spec"] is None: - input_spec["_state_spec"] = CompositeSpec( + if input_spec["full_state_spec"] is None: + input_spec["full_state_spec"] = CompositeSpec( shape=input_spec.shape, device=input_spec.device ) step_spec = UnboundedDiscreteTensorSpec( @@ -3906,7 +3875,7 @@ def transform_input_spec(self, input_spec: CompositeSpec) -> CompositeSpec: device=input_spec.device, ) step_spec.space.minimum *= 0 - input_spec["_state_spec", self.step_count_key] = step_spec + input_spec["full_state_spec", self.step_count_key] = step_spec return input_spec @@ -4426,8 +4395,8 @@ def transform_output_spec(self, output_spec: CompositeSpec) -> CompositeSpec: break else: raise RuntimeError("Expected one key to be 'done'") - output_spec["_observation_spec"][out_key] = output_spec[ - "_done_spec" + output_spec["full_observation_spec"][out_key] = output_spec[ + "full_done_spec" ].clone() if "reward" in self.in_keys: for i, out_key in enumerate(self.out_keys): # noqa: B007 @@ -4435,20 +4404,22 @@ def transform_output_spec(self, output_spec: CompositeSpec) -> CompositeSpec: break else: raise RuntimeError("Expected one key to be 'reward'") - output_spec["_observation_spec"][out_key] = output_spec[ - "_reward_spec" + output_spec["full_observation_spec"][out_key] = output_spec[ + "full_reward_spec" ].clone() for in_key, out_key in zip(self.in_keys, self.out_keys): if in_key in ("reward", "done"): continue if out_key in ("done", "reward"): - output_spec[out_key] = output_spec["_observation_spec"][in_key].clone() + output_spec[out_key] = output_spec["full_observation_spec"][ + in_key + ].clone() else: - output_spec["_observation_spec"][out_key] = output_spec[ - "_observation_spec" + output_spec["full_observation_spec"][out_key] = output_spec[ + "full_observation_spec" ][in_key].clone() if not self.create_copy: - del output_spec["_observation_spec"][in_key] + del output_spec["full_observation_spec"][in_key] return output_spec def transform_input_spec(self, input_spec: CompositeSpec) -> CompositeSpec: @@ -4457,11 +4428,11 @@ def transform_input_spec(self, input_spec: CompositeSpec) -> CompositeSpec: for in_key, out_key in zip(self.in_keys_inv, self.out_keys_inv): in_key = (in_key,) if not isinstance(in_key, tuple) else in_key out_key = (out_key,) if not isinstance(out_key, tuple) else out_key - input_spec[("_state_spec", *out_key)] = input_spec[ - ("_state_spec", *in_key) + input_spec[("full_state_spec", *out_key)] = input_spec[ + ("full_state_spec", *in_key) ].clone() if not self.create_copy: - del input_spec[("_state_spec", *in_key)] + del input_spec[("full_state_spec", *in_key)] return input_spec diff --git a/torchrl/envs/utils.py b/torchrl/envs/utils.py index 1f671dda1b2..2ed90294cb2 100644 --- a/torchrl/envs/utils.py +++ b/torchrl/envs/utils.py @@ -6,6 +6,7 @@ import importlib.util import re +from typing import List, Union import torch @@ -37,6 +38,10 @@ from torchrl.data import CompositeSpec from torchrl.data.utils import check_no_exclusive_keys +DONE_AFTER_RESET_ERROR = RuntimeError( + "Env was done after reset on specified '_reset' dimensions. This is (currently) not allowed." +) + def _convert_exploration_type(*, exploration_mode, exploration_type): if exploration_mode is not None: @@ -56,9 +61,9 @@ def step_mdp( exclude_reward: bool = True, exclude_done: bool = False, exclude_action: bool = True, - reward_key: NestedKey = "reward", - done_key: NestedKey = "done", - action_key: NestedKey = "action", + reward_keys: Union[NestedKey, List[NestedKey]] = "reward", + done_keys: Union[NestedKey, List[NestedKey]] = "done", + action_keys: Union[NestedKey, List[NestedKey]] = "action", ) -> TensorDictBase: """Creates a new tensordict that reflects a step in time of the input tensordict. @@ -86,11 +91,11 @@ def step_mdp( be kept in the root tensordict (since it should not be present in the ``"next"`` entry). Default is ``True``. - reward_key (key, optional): the key where the reward is written. Defaults + reward_keys (NestedKey or list of NestedKey, optional): the keys where the reward is written. Defaults to "reward". - done_key (key, optional): the key where the done is written. Defaults + done_keys (NestedKey or list of NestedKey, optional): the keys where the done is written. Defaults to "done". - action_key (key, optional): the key where the action is written. Defaults + action_keys (NestedKey or list of NestedKey, optional): the keys where the action is written. Defaults to "action". Returns: @@ -173,9 +178,9 @@ def step_mdp( exclude_reward=exclude_reward, exclude_done=exclude_done, exclude_action=exclude_action, - reward_key=reward_key, - done_key=done_key, - action_key=action_key, + reward_keys=reward_keys, + done_keys=done_keys, + action_keys=action_keys, ) for td, ntd in zip(tensordict.tensordicts, next_tensordicts) ], @@ -186,17 +191,20 @@ def step_mdp( return next_tensordict return out - action_key = unravel_key(action_key) - done_key = unravel_key(done_key) - reward_key = unravel_key(reward_key) + if not isinstance(action_keys, list): + action_keys = [action_keys] + if not isinstance(done_keys, list): + done_keys = [done_keys] + if not isinstance(reward_keys, list): + reward_keys = [reward_keys] excluded = set() if exclude_reward: - excluded = {reward_key} + excluded = excluded.union(reward_keys) if exclude_done: - excluded = excluded.union({done_key}) + excluded = excluded.union(done_keys) if exclude_action: - excluded = excluded.union({action_key}) + excluded = excluded.union(action_keys) next_td = tensordict.get("next") out = next_td.empty() @@ -206,7 +214,8 @@ def step_mdp( if key != "next": _set(tensordict, out, key, total_key, excluded) elif not exclude_action: - _set_single_key(tensordict, out, action_key) + for action_key in action_keys: + _set_single_key(tensordict, out, action_key) for key in next_td.keys(): _set(next_td, out, key, total_key, excluded) if next_tensordict is not None: @@ -431,16 +440,16 @@ def check_env_specs(env, return_contiguous=True, check_dtype=True, seed=0): # Check specs last_td = real_tensordict[..., -1] - _action_spec = env.input_spec["_action_spec"] - _state_spec = env.input_spec["_state_spec"] - _obs_spec = env.output_spec["_observation_spec"] - _reward_spec = env.output_spec["_reward_spec"] - _done_spec = env.output_spec["_done_spec"] + full_action_spec = env.input_spec["full_action_spec"] + full_state_spec = env.input_spec["full_state_spec"] + full_observation_spec = env.output_spec["full_observation_spec"] + full_reward_spec = env.output_spec["full_reward_spec"] + full_done_spec = env.output_spec["full_done_spec"] for name, spec in ( - ("action", _action_spec), - ("state", _state_spec), - ("done", _done_spec), - ("obs", _obs_spec), + ("action", full_action_spec), + ("state", full_state_spec), + ("done", full_done_spec), + ("obs", full_observation_spec), ): if not check_no_exclusive_keys(spec): raise AssertionError( @@ -456,9 +465,9 @@ def check_env_specs(env, return_contiguous=True, check_dtype=True, seed=0): f"spec check failed at root for spec {name}={spec} and data {td}." ) for name, spec in ( - ("reward", _reward_spec), - ("done", _done_spec), - ("obs", _obs_spec), + ("reward", full_reward_spec), + ("done", full_done_spec), + ("obs", full_observation_spec), ): if spec is None: spec = CompositeSpec(shape=env.batch_size, device=env.device) @@ -551,3 +560,10 @@ def make_composite_from_td(data): shape=data.shape, ) return composite + + +def _replace_last(key: NestedKey, new_ending: str) -> NestedKey: + if isinstance(key, str): + return new_ending + else: + return key[:-1] + (new_ending,) diff --git a/torchrl/envs/vec_env.py b/torchrl/envs/vec_env.py index cfd46d6b834..8c0fce4eaf0 100644 --- a/torchrl/envs/vec_env.py +++ b/torchrl/envs/vec_env.py @@ -34,7 +34,7 @@ from torchrl.envs.common import _EnvWrapper, EnvBase from torchrl.envs.env_creator import get_env_metadata -from torchrl.envs.utils import _set_single_key, _sort_keys +from torchrl.envs.utils import _replace_last, _set_single_key, _sort_keys _has_envpool = importlib.util.find_spec("envpool") @@ -264,11 +264,11 @@ def _set_properties(self): input_spec = meta_data.specs["input_spec"].to(device) output_spec = meta_data.specs["output_spec"].to(device) - self.action_spec = input_spec["_action_spec"] - self.state_spec = input_spec["_state_spec"] - self.observation_spec = output_spec["_observation_spec"] - self.reward_spec = output_spec["_reward_spec"] - self.done_spec = output_spec["_done_spec"] + self.action_spec = input_spec["full_action_spec"] + self.state_spec = input_spec["full_state_spec"] + self.observation_spec = output_spec["full_observation_spec"] + self.reward_spec = output_spec["full_reward_spec"] + self.done_spec = output_spec["full_done_spec"] self._dummy_env_str = meta_data.env_str self._env_tensordict = meta_data.tensordict @@ -287,12 +287,12 @@ def _set_properties(self): output_spec.append(md.specs["output_spec"]) output_spec = torch.stack(output_spec, 0) - self.action_spec = input_spec["_action_spec"] - self.state_spec = input_spec["_state_spec"] + self.action_spec = input_spec["full_action_spec"] + self.state_spec = input_spec["full_state_spec"] - self.observation_spec = output_spec["_observation_spec"] - self.reward_spec = output_spec["_reward_spec"] - self.done_spec = output_spec["_done_spec"] + self.observation_spec = output_spec["full_observation_spec"] + self.reward_spec = output_spec["full_reward_spec"] + self.done_spec = output_spec["full_done_spec"] self._dummy_env_str = str(meta_data[0]) self._env_tensordict = torch.stack( @@ -325,46 +325,49 @@ def _create_td(self) -> None: if self._single_task: self.env_input_keys = sorted( - list(self.input_spec["_action_spec"].keys(True, True)) + list(self.input_spec["full_action_spec"].keys(True, True)) + list(self.state_spec.keys(True, True)), key=_sort_keys, ) self.env_output_keys = [] self.env_obs_keys = [] - for key in self.output_spec["_observation_spec"].keys(True, True): + for key in self.output_spec["full_observation_spec"].keys(True, True): self.env_output_keys.append(unravel_key(("next", key))) self.env_obs_keys.append(key) - self.env_output_keys.append(unravel_key(("next", self.reward_key))) - self.env_output_keys.append(unravel_key(("next", self.done_key))) + self.env_output_keys += [ + unravel_key(("next", key)) for key in self.reward_keys + self.done_keys + ] else: env_input_keys = set() for meta_data in self.meta_data: - if meta_data.specs["input_spec", "_state_spec"] is not None: + if meta_data.specs["input_spec", "full_state_spec"] is not None: env_input_keys = env_input_keys.union( - meta_data.specs["input_spec", "_state_spec"].keys(True, True) + meta_data.specs["input_spec", "full_state_spec"].keys( + True, True + ) ) env_input_keys = env_input_keys.union( - meta_data.specs["input_spec", "_action_spec"].keys(True, True) + meta_data.specs["input_spec", "full_action_spec"].keys(True, True) ) env_output_keys = set() env_obs_keys = set() for meta_data in self.meta_data: env_obs_keys = env_obs_keys.union( key - for key in meta_data.specs["output_spec"]["_observation_spec"].keys( - True, True - ) + for key in meta_data.specs["output_spec"][ + "full_observation_spec" + ].keys(True, True) ) env_output_keys = env_output_keys.union( unravel_key(("next", key)) - for key in meta_data.specs["output_spec"]["_observation_spec"].keys( - True, True - ) + for key in meta_data.specs["output_spec"][ + "full_observation_spec" + ].keys(True, True) ) env_output_keys = env_output_keys.union( { - unravel_key(("next", self.reward_key)), - unravel_key(("next", self.done_key)), + unravel_key(("next", key)) + for key in self.reward_keys + self.done_keys } ) self.env_obs_keys = sorted(env_obs_keys, key=_sort_keys) @@ -375,11 +378,11 @@ def _create_td(self) -> None: set(self.env_output_keys) .union(self.env_input_keys) .union(self.env_obs_keys) + .union(set(self.done_keys)) ) - self._selected_keys.add(self.done_key) self._selected_keys.add("_reset") - self._selected_reset_keys = self.env_obs_keys + [self.done_key] + ["_reset"] + self._selected_reset_keys = self.env_obs_keys + self.done_keys self._selected_step_keys = self.env_output_keys if self._single_task: @@ -577,15 +580,22 @@ def set_seed( @_check_start def _reset(self, tensordict: TensorDictBase, **kwargs) -> TensorDictBase: - if tensordict is not None and "_reset" in tensordict.keys(): - self._assert_tensordict_shape(tensordict) - _reset = tensordict.get("_reset") - if _reset.shape[-len(self.done_spec.shape) :] != self.done_spec.shape: - raise RuntimeError( - "_reset flag in tensordict should follow env.done_spec" - ) - else: - _reset = torch.ones(self.done_spec.shape, dtype=torch.bool) + + missing_reset = False + if tensordict is not None: + needs_resetting = [False] * self.num_workers + for done_key in self.done_keys: + _reset_key = _replace_last(done_key, "_reset") + _reset = tensordict.get(_reset_key, default=None) + if _reset is not None: + for i in range(self.num_workers): + needs_resetting[i] += _reset[i].any() + else: + missing_reset = True + break + + if tensordict is None or missing_reset: + needs_resetting = [True] * self.num_workers for i, _env in enumerate(self._envs): if tensordict is not None: @@ -594,7 +604,8 @@ def _reset(self, tensordict: TensorDictBase, **kwargs) -> TensorDictBase: tensordict_ = None else: tensordict_ = None - if not _reset[i].any(): + + if not needs_resetting[i]: # We update the stored tensordict with the value of the "next" # key as one may be surprised to receive data that is not up-to-date # If we don't do this, the result of calling reset and skipping one env @@ -620,12 +631,11 @@ def _reset(self, tensordict: TensorDictBase, **kwargs) -> TensorDictBase: # select + clone creates 2 tds, but we can create one only out = TensorDict({}, batch_size=self.shared_tensordict_parent.shape) for key in self._selected_reset_keys: - if key != "_reset": - _set_single_key(self.shared_tensordict_parent, out, key, clone=True) + _set_single_key(self.shared_tensordict_parent, out, key, clone=True) return out else: return self.shared_tensordict_parent.select( - *[key for key in self._selected_reset_keys if key != "_reset"], + *self._selected_reset_keys, strict=False, ).clone() @@ -811,17 +821,22 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: @_check_start def _reset(self, tensordict: TensorDictBase, **kwargs) -> TensorDictBase: cmd_out = "reset" - if tensordict is not None and "_reset" in tensordict.keys(): - self._assert_tensordict_shape(tensordict) - _reset = tensordict.get("_reset") - if _reset.shape[-len(self.done_spec.shape) :] != self.done_spec.shape: - raise RuntimeError( - "_reset flag in tensordict should follow env.done_spec" - ) - else: - _reset = torch.ones( - self.done_spec.shape, dtype=torch.bool, device=self.device - ) + + missing_reset = False + if tensordict is not None: + needs_resetting = [False for _ in range(self.num_workers)] + for done_key in self.done_keys: + _reset_key = _replace_last(done_key, "_reset") + _reset = tensordict.get(_reset_key, default=None) + if _reset is not None: + for i in range(self.num_workers): + needs_resetting[i] += _reset[i].any() + else: + missing_reset = True + break + + if tensordict is None or missing_reset: + needs_resetting = [True] * self.num_workers for i, channel in enumerate(self.parent_channels): if tensordict is not None: @@ -830,7 +845,7 @@ def _reset(self, tensordict: TensorDictBase, **kwargs) -> TensorDictBase: tensordict_ = None else: tensordict_ = None - if not _reset[i].any(): + if not needs_resetting[i]: # We update the stored tensordict with the value of the "next" # key as one may be surprised to receive data that is not up-to-date # If we don't do this, the result of calling reset and skipping one env @@ -851,7 +866,7 @@ def _reset(self, tensordict: TensorDictBase, **kwargs) -> TensorDictBase: channel.send(out) for i, channel in enumerate(self.parent_channels): - if not _reset[i].any(): + if not needs_resetting[i]: continue cmd_in, data = channel.recv() if cmd_in != "reset_obs": @@ -862,12 +877,11 @@ def _reset(self, tensordict: TensorDictBase, **kwargs) -> TensorDictBase: # select + clone creates 2 tds, but we can create one only out = TensorDict({}, batch_size=self.shared_tensordict_parent.shape) for key in self._selected_reset_keys: - if key != "_reset": - _set_single_key(self.shared_tensordict_parent, out, key, clone=True) + _set_single_key(self.shared_tensordict_parent, out, key, clone=True) return out else: return self.shared_tensordict_parent.select( - *[key for key in self._selected_reset_keys if key != "_reset"], + *self._selected_reset_keys, strict=False, ).clone() @@ -1050,9 +1064,6 @@ def _run_worker_pipe_shared_mem( raise RuntimeError("call 'init' before resetting") local_tensordict = data local_tensordict = env._reset(tensordict=local_tensordict) - - if "_reset" in local_tensordict.keys(): - local_tensordict.del_("_reset") if pin_memory: local_tensordict.pin_memory() shared_tensordict.update_(local_tensordict) @@ -1188,9 +1199,9 @@ def _make_specs( with set_gym_backend("gym"): self.action_spec = self._get_action_spec() output_spec = self._get_output_spec() - self.observation_spec = output_spec["_observation_spec"] - self.reward_spec = output_spec["_reward_spec"] - self.done_spec = output_spec["_done_spec"] + self.observation_spec = output_spec["full_observation_spec"] + self.reward_spec = output_spec["full_reward_spec"] + self.done_spec = output_spec["full_done_spec"] def _init_env(self) -> Optional[int]: pass @@ -1235,9 +1246,9 @@ def _get_action_spec(self) -> TensorSpec: def _get_output_spec(self) -> TensorSpec: return CompositeSpec( - _observation_spec=self._get_observation_spec(), - _reward_spec=self._get_reward_spec(), - _done_spec=self._get_done_spec(), + full_observation_spec=self._get_observation_spec(), + full_reward_spec=self._get_reward_spec(), + full_done_spec=self._get_done_spec(), shape=(self.num_workers,), device=self.device, ) diff --git a/torchrl/trainers/helpers/models.py b/torchrl/trainers/helpers/models.py index 4d9e0198839..d0f587e4a98 100644 --- a/torchrl/trainers/helpers/models.py +++ b/torchrl/trainers/helpers/models.py @@ -128,7 +128,7 @@ def make_dqn_actor( atoms = cfg.atoms if cfg.distributional else None linear_layer_class = torch.nn.Linear if not cfg.noisy else NoisyLinear - action_spec = env_specs["input_spec", "_action_spec", "action"] + action_spec = env_specs["input_spec", "full_action_spec", "action"] if action_spec.domain != "discrete": raise ValueError( f"env {proof_environment} has an action domain " @@ -158,7 +158,9 @@ def make_dqn_actor( "mlp_kwargs_output": {"num_cells": 512, "layer_class": linear_layer_class}, } # automatically infer in key - (in_key,) = itertools.islice(env_specs["output_spec", "_observation_spec"], 1) + (in_key,) = itertools.islice( + env_specs["output_spec", "full_observation_spec"], 1 + ) actor_class = QValueActor actor_kwargs = {} @@ -167,7 +169,7 @@ def make_dqn_actor( # if action spec is modeled as categorical variable, we still need to have features equal # to the number of possible choices and also set categorical behavioural for actors. actor_kwargs.update({"action_space": "categorical"}) - out_features = env_specs["input_spec", "_action_spec", "action"].space.n + out_features = env_specs["input_spec", "full_action_spec", "action"].space.n else: out_features = action_spec.shape[0] diff --git a/tutorials/sphinx-tutorials/multiagent_ppo.py b/tutorials/sphinx-tutorials/multiagent_ppo.py index 61eb2522dcb..32755b6b807 100644 --- a/tutorials/sphinx-tutorials/multiagent_ppo.py +++ b/tutorials/sphinx-tutorials/multiagent_ppo.py @@ -273,9 +273,9 @@ # To access the full structure of the specs we can use # -print("full_action_spec:", env.input_spec["_action_spec"]) -print("full_reward_spec:", env.output_spec["_reward_spec"]) -print("full_done_spec:", env.output_spec["_done_spec"]) +print("full_action_spec:", env.input_spec["full_action_spec"]) +print("full_reward_spec:", env.output_spec["full_reward_spec"]) +print("full_done_spec:", env.output_spec["full_done_spec"]) ###################################################################### # As you can see the reward and action spec present the "agent" key, @@ -296,9 +296,9 @@ # To tie it all together, we can see that passing these keys to the full specs gives us the leaf domains # -assert env.action_spec == env.input_spec["_action_spec"][env.action_key] -assert env.reward_spec == env.output_spec["_reward_spec"][env.reward_key] -assert env.done_spec == env.output_spec["_done_spec"][env.done_key] +assert env.action_spec == env.input_spec["full_action_spec"][env.action_key] +assert env.reward_spec == env.output_spec["full_reward_spec"][env.reward_key] +assert env.done_spec == env.output_spec["full_done_spec"][env.done_key] ###################################################################### # Transforms From 3366f93c36ad67805dea05884314b95aca0e10ea Mon Sep 17 00:00:00 2001 From: Omkar Salpekar Date: Wed, 30 Aug 2023 12:20:47 -0400 Subject: [PATCH 044/148] [CI] Linux Olddeps tests to Nova (#1289) Co-authored-by: vmoens --- .../scripts_gym_0_13/run_test.sh | 2 ++ .github/workflows/test-linux-olddeps.yml | 33 +++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 .github/workflows/test-linux-olddeps.yml diff --git a/.circleci/unittest/linux_olddeps/scripts_gym_0_13/run_test.sh b/.circleci/unittest/linux_olddeps/scripts_gym_0_13/run_test.sh index 088a7572d0b..50725b6bdc5 100755 --- a/.circleci/unittest/linux_olddeps/scripts_gym_0_13/run_test.sh +++ b/.circleci/unittest/linux_olddeps/scripts_gym_0_13/run_test.sh @@ -15,6 +15,8 @@ env_dir="${root_dir}/env" lib_dir="${env_dir}/lib" export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$lib_dir +#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/work/mujoco-py/mujoco_py/binaries/linux/mujoco210/bin +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/pytorch/rl/mujoco-py/mujoco_py/binaries/linux/mujoco210/bin export MKL_THREADING_LAYER=GNU python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test.py -v --durations 200 diff --git a/.github/workflows/test-linux-olddeps.yml b/.github/workflows/test-linux-olddeps.yml new file mode 100644 index 00000000000..0797d103fc0 --- /dev/null +++ b/.github/workflows/test-linux-olddeps.yml @@ -0,0 +1,33 @@ +name: Olddeps Tests on Linux + +on: + pull_request: + push: + branches: + - nightly + - main + - release/* + workflow_dispatch: + +jobs: + unittests: + uses: pytorch/test-infra/.github/workflows/linux_job.yml@main + with: + repository: pytorch/rl + runner: "linux.g5.4xlarge.nvidia.gpu" + # gpu-arch-type: cuda + # gpu-arch-version: "11.7" + docker-image: "nvidia/cudagl:11.4.0-base" + timeout: 120 + script: | + set -euo pipefail + export PYTHON_VERSION="3.9" + export CU_VERSION="cu116" + export TAR_OPTIONS="--no-same-owner" + export UPLOAD_CHANNEL="nightly" + export TF_CPP_MIN_LOG_LEVEL=0 + + + bash .circleci/unittest/linux_olddeps/scripts_gym_0_13/setup_env.sh + bash .circleci/unittest/linux_olddeps/scripts_gym_0_13/batch_scripts.sh + bash .circleci/unittest/linux_olddeps/scripts_gym_0_13/post_process.sh From 3c63a58ab32015e09422524d32c5492b457d40e9 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 30 Aug 2023 18:34:27 +0100 Subject: [PATCH 045/148] [Feature] Device transform (#1472) --- docs/source/reference/envs.rst | 1 + test/mocking_classes.py | 2 +- test/test_transforms.py | 102 ++++++++++++ torchrl/data/replay_buffers/replay_buffers.py | 33 ++-- torchrl/data/replay_buffers/storages.py | 35 +++- torchrl/envs/__init__.py | 1 + torchrl/envs/transforms/__init__.py | 1 + torchrl/envs/transforms/transforms.py | 150 +++++++++++++++--- 8 files changed, 287 insertions(+), 38 deletions(-) diff --git a/docs/source/reference/envs.rst b/docs/source/reference/envs.rst index 1cd56ba13b4..a1f40b20ee7 100644 --- a/docs/source/reference/envs.rst +++ b/docs/source/reference/envs.rst @@ -450,6 +450,7 @@ to be able to create this other composition: CatTensors CenterCrop Compose + DeviceCastTransform DiscreteActionProjection DoubleToFloat DTypeCastTransform diff --git a/test/mocking_classes.py b/test/mocking_classes.py index 147ea4e32f4..a689db25748 100644 --- a/test/mocking_classes.py +++ b/test/mocking_classes.py @@ -91,7 +91,7 @@ def __init__( **kwargs, ): super().__init__( - device="cpu", + device=kwargs.pop("device", "cpu"), dtype=torch.get_default_dtype(), ) self.set_seed(seed) diff --git a/test/test_transforms.py b/test/test_transforms.py index 09eb5b3ca74..861fe3ce8aa 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -38,9 +38,11 @@ from torchrl.data import ( BoundedTensorSpec, CompositeSpec, + LazyMemmapStorage, LazyTensorStorage, ReplayBuffer, TensorDictReplayBuffer, + TensorStorage, UnboundedContinuousTensorSpec, ) from torchrl.envs import ( @@ -49,6 +51,7 @@ CatTensors, CenterCrop, Compose, + DeviceCastTransform, DiscreteActionProjection, DoubleToFloat, EnvBase, @@ -8133,6 +8136,105 @@ def test_kl_lstm(self): klt(env.rollout(3, policy)) +class TestDeviceCastTransform(TransformBase): + def test_single_trans_env_check(self): + env = ContinuousActionVecMockEnv(device="cpu:0") + env = TransformedEnv(env, DeviceCastTransform("cpu:1")) + assert env.device == torch.device("cpu:1") + check_env_specs(env) + + def test_serial_trans_env_check(self): + def make_env(): + return TransformedEnv( + ContinuousActionVecMockEnv(device="cpu:0"), DeviceCastTransform("cpu:1") + ) + + env = SerialEnv(2, make_env) + assert env.device == torch.device("cpu:1") + check_env_specs(env) + + def test_parallel_trans_env_check(self): + def make_env(): + return TransformedEnv( + ContinuousActionVecMockEnv(device="cpu:0"), DeviceCastTransform("cpu:1") + ) + + env = ParallelEnv(2, make_env) + assert env.device == torch.device("cpu:1") + check_env_specs(env) + + def test_trans_serial_env_check(self): + def make_env(): + return ContinuousActionVecMockEnv(device="cpu:0") + + env = TransformedEnv(SerialEnv(2, make_env), DeviceCastTransform("cpu:1")) + assert env.device == torch.device("cpu:1") + check_env_specs(env) + + def test_trans_parallel_env_check(self): + def make_env(): + return ContinuousActionVecMockEnv(device="cpu:0") + + env = TransformedEnv(ParallelEnv(2, make_env), DeviceCastTransform("cpu:1")) + assert env.device == torch.device("cpu:1") + check_env_specs(env) + + def test_transform_no_env(self): + t = DeviceCastTransform("cpu:1", "cpu:0") + assert t._call(TensorDict({}, [], device="cpu:0")).device == torch.device( + "cpu:1" + ) + + def test_transform_compose(self): + t = Compose(DeviceCastTransform("cpu:1", "cpu:0")) + assert t._call(TensorDict({}, [], device="cpu:0")).device == torch.device( + "cpu:1" + ) + assert t._inv_call(TensorDict({}, [], device="cpu:1")).device == torch.device( + "cpu:0" + ) + + def test_transform_env(self): + env = ContinuousActionVecMockEnv(device="cpu:0") + assert env.device == torch.device("cpu:0") + env = TransformedEnv(env, DeviceCastTransform("cpu:1")) + assert env.device == torch.device("cpu:1") + assert env.transform.device == torch.device("cpu:1") + assert env.transform.orig_device == torch.device("cpu:0") + + def test_transform_model(self): + t = Compose(DeviceCastTransform("cpu:1", "cpu:0")) + m = nn.Sequential(t) + assert t(TensorDict({}, [], device="cpu:0")).device == torch.device("cpu:1") + + @pytest.mark.parametrize("rbclass", [ReplayBuffer, TensorDictReplayBuffer]) + @pytest.mark.parametrize( + "storage", [TensorStorage, LazyTensorStorage, LazyMemmapStorage] + ) + def test_transform_rb(self, rbclass, storage): + t = Compose(DeviceCastTransform("cpu:1", "cpu:0")) + storage_kwargs = ( + { + "storage": TensorDict( + {"a": torch.zeros(20, 1, device="cpu:0")}, [20], device="cpu:0" + ) + } + if storage is TensorStorage + else {} + ) + rb = rbclass(storage=storage(max_size=20, device="auto", **storage_kwargs)) + rb.append_transform(t) + rb.add(TensorDict({"a": [1]}, [], device="cpu:1")) + assert rb._storage._storage.device == torch.device("cpu:0") + assert rb.sample(4).device == torch.device("cpu:1") + + def test_transform_inverse(self): + t = DeviceCastTransform("cpu:1", "cpu:0") + assert t._inv_call(TensorDict({}, [], device="cpu:1")).device == torch.device( + "cpu:0" + ) + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/torchrl/data/replay_buffers/replay_buffers.py b/torchrl/data/replay_buffers/replay_buffers.py index d9ba666cc5b..a5abfbdb0ba 100644 --- a/torchrl/data/replay_buffers/replay_buffers.py +++ b/torchrl/data/replay_buffers/replay_buffers.py @@ -248,6 +248,13 @@ def add(self, data: Any) -> int: Returns: index where the data lives in the replay buffer. """ + if self._transform is not None and ( + is_tensor_collection(data) or len(self._transform) + ): + data = self._transform.inv(data) + return self._add(data) + + def _add(self, data): with self._replay_lock: index = self._writer.add(data) self._sampler.add(index) @@ -271,9 +278,9 @@ def extend(self, data: Sequence) -> torch.Tensor: Returns: Indices of the data added to the replay buffer. """ - if self._transform is not None and is_tensor_collection(data): - data = self._transform.inv(data) - elif self._transform is not None and len(self._transform): + if self._transform is not None and ( + is_tensor_collection(data) or len(self._transform) + ): data = self._transform.inv(data) return self._extend(data) @@ -675,19 +682,24 @@ def _get_priority(self, tensordict: TensorDictBase) -> Optional[torch.Tensor]: return priority def add(self, data: TensorDictBase) -> int: + if self._transform is not None: + data = self._transform.inv(data) + if is_tensor_collection(data): data_add = TensorDict( { "_data": data, }, batch_size=[], + device=data.device, ) if data.batch_size: data_add["_rb_batch_size"] = torch.tensor(data.batch_size) else: data_add = data - index = super().add(data_add) + + index = super()._add(data_add) if is_tensor_collection(data_add): data_add.set("index", index) @@ -699,7 +711,8 @@ def add(self, data: TensorDictBase) -> int: def extend(self, tensordicts: Union[List, TensorDictBase]) -> torch.Tensor: if is_tensor_collection(tensordicts): tensordicts = TensorDict( - {"_data": tensordicts}, batch_size=tensordicts.batch_size[:1] + {"_data": tensordicts}, + batch_size=tensordicts.batch_size[:1], ) if tensordicts.batch_dims > 1: # we want the tensordict to have one dimension only. The batch size @@ -730,14 +743,12 @@ def extend(self, tensordicts: Union[List, TensorDictBase]) -> torch.Tensor: stacked_td = tensordicts if self._transform is not None: - stacked_td.set("_data", self._transform.inv(stacked_td.get("_data"))) + tensordicts = self._transform.inv(stacked_td.get("_data")) + stacked_td.set("_data", tensordicts) + if tensordicts.device is not None: + stacked_td = stacked_td.to(tensordicts.device) index = super()._extend(stacked_td) - # stacked_td.set( - # "index", - # torch.tensor(index, dtype=torch.int, device=stacked_td.device), - # inplace=True, - # ) self.update_tensordict_priority(stacked_td) return index diff --git a/torchrl/data/replay_buffers/storages.py b/torchrl/data/replay_buffers/storages.py index 436c6cf76e3..f2b28f373b4 100644 --- a/torchrl/data/replay_buffers/storages.py +++ b/torchrl/data/replay_buffers/storages.py @@ -171,11 +171,14 @@ class TensorStorage(Storage): """A storage for tensors and tensordicts. Args: - data (tensor or TensorDict): the data buffer to be used. + storage (tensor or TensorDict): the data buffer to be used. max_size (int): size of the storage, i.e. maximum number of elements stored in the buffer. device (torch.device, optional): device where the sampled tensors will be stored and sent. Default is :obj:`torch.device("cpu")`. + If "auto" is passed, the device is automatically gathered from the + first batch of data passed. This is not enabled by default to avoid + data placed on GPU by mistake, causing OOM issues. Examples: >>> data = TensorDict({ @@ -230,7 +233,7 @@ def __new__(cls, *args, **kwargs): cls._storage = None return super().__new__(cls) - def __init__(self, storage, max_size=None, device=None): + def __init__(self, storage, max_size=None, device="cpu"): if not ((storage is None) ^ (max_size is None)): if storage is None: raise ValueError("Expected storage to be non-null.") @@ -247,7 +250,13 @@ def __init__(self, storage, max_size=None, device=None): self._len = max_size else: self._len = 0 - self.device = device if device else torch.device("cpu") + self.device = ( + torch.device(device) + if device != "auto" + else storage.device + if storage is not None + else "auto" + ) self._storage = storage def state_dict(self) -> Dict[str, Any]: @@ -345,6 +354,9 @@ class LazyTensorStorage(TensorStorage): in the buffer. device (torch.device, optional): device where the sampled tensors will be stored and sent. Default is :obj:`torch.device("cpu")`. + If "auto" is passed, the device is automatically gathered from the + first batch of data passed. This is not enabled by default to avoid + data placed on GPU by mistake, causing OOM issues. Examples: >>> data = TensorDict({ @@ -396,12 +408,14 @@ class LazyTensorStorage(TensorStorage): """ - def __init__(self, max_size, device=None): - super().__init__(None, max_size, device=device) + def __init__(self, max_size, device="cpu"): + super().__init__(storage=None, max_size=max_size, device=device) def _init(self, data: Union[TensorDictBase, torch.Tensor]) -> None: if VERBOSE: print("Creating a TensorStorage...") + if self.device == "auto": + self.device = data.device if isinstance(data, torch.Tensor): # if Tensor, we just create a MemmapTensor of the desired shape, device and dtype out = torch.empty( @@ -436,6 +450,9 @@ class LazyMemmapStorage(LazyTensorStorage): scratch_dir (str or path): directory where memmap-tensors will be written. device (torch.device, optional): device where the sampled tensors will be stored and sent. Default is :obj:`torch.device("cpu")`. + If ``None`` is provided, the device is automatically gathered from the + first batch of data passed. This is not enabled by default to avoid + data placed on GPU by mistake, causing OOM issues. Examples: >>> data = TensorDict({ @@ -486,7 +503,7 @@ class LazyMemmapStorage(LazyTensorStorage): """ - def __init__(self, max_size, scratch_dir=None, device=None): + def __init__(self, max_size, scratch_dir=None, device="cpu"): super().__init__(max_size) self.initialized = False self.scratch_dir = None @@ -494,7 +511,7 @@ def __init__(self, max_size, scratch_dir=None, device=None): self.scratch_dir = str(scratch_dir) if self.scratch_dir[-1] != "/": self.scratch_dir += "/" - self.device = device if device else torch.device("cpu") + self.device = torch.device(device) if device != "auto" else device self._len = 0 def state_dict(self) -> Dict[str, Any]: @@ -552,6 +569,8 @@ def load_state_dict(self, state_dict): def _init(self, data: Union[TensorDictBase, torch.Tensor]) -> None: if VERBOSE: print("Creating a MemmapStorage...") + if self.device == "auto": + self.device = data.device if isinstance(data, torch.Tensor): # if Tensor, we just create a MemmapTensor of the desired shape, device and dtype out = MemmapTensor( @@ -682,7 +701,7 @@ def _get_default_collate(storage, _is_tensordict=False): return torch.utils.data._utils.collate.default_collate elif isinstance(storage, LazyMemmapStorage): return _collate_as_tensor - elif isinstance(storage, (LazyTensorStorage,)): + elif isinstance(storage, (TensorStorage,)): return _collate_contiguous else: raise NotImplementedError( diff --git a/torchrl/envs/__init__.py b/torchrl/envs/__init__.py index 9422e60a5d5..1fce893fc25 100644 --- a/torchrl/envs/__init__.py +++ b/torchrl/envs/__init__.py @@ -13,6 +13,7 @@ CatTensors, CenterCrop, Compose, + DeviceCastTransform, DiscreteActionProjection, DoubleToFloat, DTypeCastTransform, diff --git a/torchrl/envs/transforms/__init__.py b/torchrl/envs/transforms/__init__.py index f14df66f9ed..2d37bfe5177 100644 --- a/torchrl/envs/transforms/__init__.py +++ b/torchrl/envs/transforms/__init__.py @@ -11,6 +11,7 @@ CatTensors, CenterCrop, Compose, + DeviceCastTransform, DiscreteActionProjection, DoubleToFloat, DTypeCastTransform, diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index 01743f65c18..c9423e018fd 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -268,6 +268,10 @@ def inv(self, tensordict: TensorDictBase) -> TensorDictBase: out = self._inv_call(tensordict.clone(False)) return out + def transform_env_device(self, device: torch.device): + """Transforms the device of the parent env.""" + return device + def transform_output_spec(self, output_spec: CompositeSpec) -> CompositeSpec: """Transforms the output spec such that the resulting spec matches transform mapping. @@ -383,23 +387,7 @@ def parent(self) -> Optional[EnvBase]: raise ValueError( "A transform parent must be either another Compose transform or an environment object." ) - compose = container - if compose.__dict__["_container"]: - # the parent of the compose must be a TransformedEnv - compose_parent = TransformedEnv( - compose.__dict__["_container"].base_env - ) - comp_parent_trans = compose_parent.transform.clone() - out = TransformedEnv( - compose_parent.base_env, - transform=comp_parent_trans, - ) - for orig_trans in compose.transforms: - if orig_trans is self: - break - transform = orig_trans.clone() - transform.reset_parent() - out.append_transform(transform) + out, _ = container._rebuild_up_to(self) elif isinstance(container, TransformedEnv): out = TransformedEnv(container.base_env) else: @@ -533,7 +521,11 @@ def transform(self, transform: Transform): @property def device(self) -> bool: - return self.base_env.device + device = self.base_env.device + if self.transform is None: + # during init, the device is checked + return device + return self.transform.transform_env_device(device) @device.setter def device(self, value): @@ -815,6 +807,11 @@ def _inv_call(self, tensordict: TensorDictBase) -> TensorDictBase: tensordict = t._inv_call(tensordict) return tensordict + def transform_env_device(self, device: torch.device): + for t in self.transforms: + device = t.transform_env_device(device) + return device + def transform_input_spec(self, input_spec: TensorSpec) -> TensorSpec: for t in self.transforms[::-1]: input_spec = t.transform_input_spec(input_spec) @@ -921,6 +918,39 @@ def set_missing_tolerance(self, mode=False): t.set_missing_tolerance(mode) super().set_missing_tolerance(mode) + def _rebuild_up_to(self, final_transform): + container = self.__dict__["_container"] + + if isinstance(container, Compose): + out, parent_compose = container._rebuild_up_to(self) + if out is None: + # returns None if there is no parent env + return None, None + elif isinstance(container, TransformedEnv): + out = TransformedEnv(container.base_env) + elif container is None: + # returns None if there is no parent env + return None, None + else: + raise ValueError(f"Container of type {type(container)} isn't supported.") + + if final_transform not in self.transforms: + raise ValueError(f"Cannot rebuild with transform {final_transform}.") + list_of_transforms = [] + for orig_trans in self.transforms: + if orig_trans is final_transform: + break + transform = orig_trans.clone() + transform.reset_parent() + list_of_transforms.append(transform) + if isinstance(container, Compose): + parent_compose.append(Compose(*list_of_transforms)) + return out, parent_compose[-1] + elif isinstance(container, TransformedEnv): + for t in list_of_transforms: + out.append_transform(t) + return out, out.transform + class ToTensorImage(ObservationTransform): """Transforms a numpy-like image (W x H x C) to a pytorch image (C x W x H). @@ -2677,6 +2707,90 @@ def __init__( super().__init__(torch.double, torch.float, in_keys, in_keys_inv) +class DeviceCastTransform(Transform): + """Moves data from one device to another. + + Args: + device (torch.device or equivalent): the destination device. + orig_device (torch.device or equivalent): the origin device. If not specified and + a parent environment exists, it it retrieved from it. In all other cases, + it remains unspecified. + + Examples: + >>> td = TensorDict( + ... {'obs': torch.ones(1, dtype=torch.double), + ... }, [], device="cpu:0") + >>> transform = DeviceCastTransform(device=torch.device("cpu:2")) + >>> td = transform(td) + >>> print(td.device) + cpu:2 + + """ + + invertible = True + + def __init__( + self, + device, + orig_device=None, + ): + self.device = torch.device(device) + self.orig_device = ( + torch.device(orig_device) if orig_device is not None else orig_device + ) + super().__init__(in_keys=[]) + + def set_container(self, container: Union[Transform, EnvBase]) -> None: + if self.orig_device is None: + if isinstance(container, EnvBase): + device = container.device + else: + parent = container.parent + if parent is not None: + device = parent.device + else: + device = torch.device("cpu") + self.orig_device = device + return super().set_container(container) + + @dispatch(source="in_keys", dest="out_keys") + def forward(self, tensordict: TensorDictBase) -> TensorDictBase: + return tensordict.to(self.device, non_blocking=True) + + def _call(self, tensordict: TensorDictBase) -> TensorDictBase: + return tensordict.to(self.device, non_blocking=True) + + def _inv_call(self, tensordict: TensorDictBase) -> TensorDictBase: + parent = self.parent + if parent is None: + if self.orig_device is None: + return tensordict + return tensordict.to(self.orig_device, non_blocking=True) + return tensordict.to(parent.device, non_blocking=True) + + def transform_input_spec(self, input_spec: TensorSpec) -> TensorSpec: + return input_spec.to(self.device) + + def transform_reward_spec(self, reward_spec: TensorSpec) -> TensorSpec: + return reward_spec.to(self.device) + + def transform_observation_spec(self, observation_spec: TensorSpec) -> TensorSpec: + return observation_spec.to(self.device) + + def transform_output_spec(self, output_spec: CompositeSpec) -> CompositeSpec: + return output_spec.to(self.device) + + def transform_done_spec(self, done_spec: TensorSpec) -> TensorSpec: + return done_spec.to(self.device) + + def transform_env_device(self, device): + return self.device + + def __repr__(self) -> str: + s = f"{self.__class__.__name__}(device={self.device}, orig_device={self.orig_device})" + return s + + class CatTensors(Transform): """Concatenates several keys in a single tensor. From 29a0565fe58f1cb6301536f3450dde6fa4813fec Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 30 Aug 2023 20:18:35 +0100 Subject: [PATCH 046/148] [BugFix] Fix reward sum within parallel envs (#1454) --- test/test_transforms.py | 35 +++++++++++++++++++++++---- torchrl/envs/transforms/transforms.py | 16 ++++++++++++ 2 files changed, 46 insertions(+), 5 deletions(-) diff --git a/test/test_transforms.py b/test/test_transforms.py index 861fe3ce8aa..a0d2568208a 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -4096,30 +4096,55 @@ def test_transform_inverse(self): class TestRewardSum(TransformBase): def test_single_trans_env_check(self): - env = TransformedEnv(ContinuousActionVecMockEnv(), RewardSum()) + env = TransformedEnv( + ContinuousActionVecMockEnv(), + Compose(RewardScaling(loc=-1, scale=1), RewardSum()), + ) check_env_specs(env) + r = env.rollout(4) + assert r["next", "episode_reward"].unique().numel() > 1 def test_serial_trans_env_check(self): def make_env(): - return TransformedEnv(ContinuousActionVecMockEnv(), RewardSum()) + return TransformedEnv( + ContinuousActionVecMockEnv(), + Compose(RewardScaling(loc=-1, scale=1), RewardSum()), + ) env = SerialEnv(2, make_env) check_env_specs(env) + r = env.rollout(4) + assert r["next", "episode_reward"].unique().numel() > 1 def test_parallel_trans_env_check(self): def make_env(): - return TransformedEnv(ContinuousActionVecMockEnv(), RewardSum()) + return TransformedEnv( + ContinuousActionVecMockEnv(), + Compose(RewardScaling(loc=-1, scale=1), RewardSum()), + ) env = ParallelEnv(2, make_env) check_env_specs(env) + r = env.rollout(4) + assert r["next", "episode_reward"].unique().numel() > 1 def test_trans_serial_env_check(self): - env = TransformedEnv(SerialEnv(2, ContinuousActionVecMockEnv), RewardSum()) + env = TransformedEnv( + SerialEnv(2, ContinuousActionVecMockEnv), + Compose(RewardScaling(loc=-1, scale=1), RewardSum()), + ) check_env_specs(env) + r = env.rollout(4) + assert r["next", "episode_reward"].unique().numel() > 1 def test_trans_parallel_env_check(self): - env = TransformedEnv(ParallelEnv(2, ContinuousActionVecMockEnv), RewardSum()) + env = TransformedEnv( + ParallelEnv(2, ContinuousActionVecMockEnv), + Compose(RewardScaling(loc=-1, scale=1), RewardSum()), + ) check_env_specs(env) + r = env.rollout(4) + assert r["next", "episode_reward"].unique().numel() > 1 @pytest.mark.parametrize("in_key", ["reward", ("some", "nested")]) def test_transform_no_env(self, in_key): diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index c9423e018fd..3c494352c89 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -3818,6 +3818,22 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: tensordict.set("next", next_tensordict) return tensordict + def transform_input_spec(self, input_spec: TensorSpec) -> TensorSpec: + state_spec = input_spec["full_state_spec"] + if state_spec is None: + state_spec = CompositeSpec(shape=input_spec.shape, device=input_spec.device) + reward_spec = self.parent.reward_spec + # Define episode specs for all out_keys + for out_key in self.out_keys: + episode_spec = UnboundedContinuousTensorSpec( + shape=reward_spec.shape, + device=reward_spec.device, + dtype=reward_spec.dtype, + ) + state_spec[out_key] = episode_spec + input_spec["full_state_spec"] = state_spec + return input_spec + def transform_observation_spec(self, observation_spec: TensorSpec) -> TensorSpec: """Transforms the observation spec, adding the new keys generated by RewardSum.""" # Retrieve parent reward spec From 4c5d937421519eed0272124fc2d2ffebfe14a490 Mon Sep 17 00:00:00 2001 From: Omkar Salpekar Date: Wed, 30 Aug 2023 17:59:05 -0400 Subject: [PATCH 047/148] Move to More Efficient Windows Runner (#1476) --- .github/workflows/test-windows-optdepts-gpu.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-windows-optdepts-gpu.yml b/.github/workflows/test-windows-optdepts-gpu.yml index cdd455eb6e6..7f2f39d7b0e 100644 --- a/.github/workflows/test-windows-optdepts-gpu.yml +++ b/.github/workflows/test-windows-optdepts-gpu.yml @@ -17,7 +17,7 @@ jobs: unittests: uses: pytorch/test-infra/.github/workflows/windows_job.yml@main with: - runner: "windows.8xlarge.nvidia.gpu" + runner: "windows.g5.4xlarge.nvidia.gpu" repository: pytorch/rl timeout: 240 script: | From 7254f83d0f19aed0f10b6443eb123eafdd465c04 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 1 Sep 2023 10:09:33 +0100 Subject: [PATCH 048/148] [Refactor] Faster envs (2) (#1457) --- .../linux_libs/scripts_gym/run_test.sh | 2 +- .../linux_libs/scripts_gym/setup_env.sh | 3 +- examples/decision_transformer/utils.py | 38 +- test/mocking_classes.py | 32 +- test/test_collector.py | 101 +++-- test/test_env.py | 16 +- test/test_transforms.py | 48 ++- torchrl/collectors/collectors.py | 21 +- torchrl/data/tensor_specs.py | 6 +- torchrl/envs/common.py | 49 +-- torchrl/envs/gym_like.py | 45 +-- torchrl/envs/libs/brax.py | 1 - torchrl/envs/libs/jumanji.py | 5 +- torchrl/envs/libs/openml.py | 2 +- torchrl/envs/libs/vmas.py | 2 +- torchrl/envs/model_based/common.py | 5 +- torchrl/envs/transforms/rlhf.py | 7 +- torchrl/envs/transforms/transforms.py | 142 ++++--- torchrl/envs/transforms/vip.py | 12 +- torchrl/envs/utils.py | 35 +- torchrl/envs/vec_env.py | 376 +++++++++--------- tutorials/sphinx-tutorials/pendulum.py | 13 +- 22 files changed, 495 insertions(+), 466 deletions(-) diff --git a/.circleci/unittest/linux_libs/scripts_gym/run_test.sh b/.circleci/unittest/linux_libs/scripts_gym/run_test.sh index b710b77c9b9..e057483afb0 100755 --- a/.circleci/unittest/linux_libs/scripts_gym/run_test.sh +++ b/.circleci/unittest/linux_libs/scripts_gym/run_test.sh @@ -22,6 +22,6 @@ python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_ export DISPLAY=':99.0' Xvfb :99 -screen 0 1400x900x24 > /dev/null 2>&1 & -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 -k "gym" --error-for-skips +python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 -k "gym and not isaac" --error-for-skips coverage combine coverage xml -i diff --git a/.circleci/unittest/linux_libs/scripts_gym/setup_env.sh b/.circleci/unittest/linux_libs/scripts_gym/setup_env.sh index c17bd82d120..a6cf44d8d02 100755 --- a/.circleci/unittest/linux_libs/scripts_gym/setup_env.sh +++ b/.circleci/unittest/linux_libs/scripts_gym/setup_env.sh @@ -79,7 +79,8 @@ conda env config vars set \ NVIDIA_PATH=/usr/src/nvidia-470.63.01 \ MUJOCO_PY_MJKEY_PATH=${root_dir}/mujoco-py/mujoco_py/binaries/mjkey.txt \ MUJOCO_PY_MUJOCO_PATH=${root_dir}/mujoco-py/mujoco_py/binaries/linux/mujoco210 \ - LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/circleci/project/mujoco-py/mujoco_py/binaries/linux/mujoco210/bin + LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/pytorch/rl/mujoco-py/mujoco_py/binaries/linux/mujoco210/bin +# LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/circleci/project/mujoco-py/mujoco_py/binaries/linux/mujoco210/bin # LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/src/nvidia-470.63.01 \ diff --git a/examples/decision_transformer/utils.py b/examples/decision_transformer/utils.py index c181b32ca5d..768237178c9 100644 --- a/examples/decision_transformer/utils.py +++ b/examples/decision_transformer/utils.py @@ -74,14 +74,17 @@ def make_transformed_env(base_env, env_cfg, obs_loc, obs_std, train=False): transformed_env = TransformedEnv(base_env) transformed_env.append_transform( RewardScaling( - loc=0, scale=env_cfg.reward_scaling, in_keys="reward", standard_normal=False + loc=0, + scale=env_cfg.reward_scaling, + in_keys=["reward"], + standard_normal=False, ) ) if train: transformed_env.append_transform( TargetReturn( env_cfg.collect_target_return * env_cfg.reward_scaling, - out_keys=["return_to_go"], + out_keys=["return_to_go_single"], mode=env_cfg.target_return_mode, ) ) @@ -89,7 +92,7 @@ def make_transformed_env(base_env, env_cfg, obs_loc, obs_std, train=False): transformed_env.append_transform( TargetReturn( env_cfg.eval_target_return * env_cfg.reward_scaling, - out_keys=["return_to_go"], + out_keys=["return_to_go_single"], mode=env_cfg.target_return_mode, ) ) @@ -107,7 +110,11 @@ def make_transformed_env(base_env, env_cfg, obs_loc, obs_std, train=False): ) transformed_env.append_transform(obsnorm) transformed_env.append_transform( - UnsqueezeTransform(-2, in_keys=["observation", "action", "return_to_go"]) + UnsqueezeTransform( + -2, + in_keys=["observation", "action", "return_to_go_single"], + out_keys=["observation", "action", "return_to_go"], + ) ) transformed_env.append_transform( CatFrames( @@ -158,6 +165,8 @@ def make_collector(cfg, policy): exclude_target_return = ExcludeTransform( "return_to_go", ("next", "return_to_go"), + "return_to_go_single", + ("next", "return_to_go_single"), ("next", "action"), ("next", "observation"), "scale", @@ -183,9 +192,15 @@ def make_collector(cfg, policy): def make_offline_replay_buffer(rb_cfg, reward_scaling): - r2g = Reward2GoTransform(gamma=1.0, in_keys=["reward"], out_keys=["return_to_go"]) + r2g = Reward2GoTransform( + gamma=1.0, in_keys=["reward"], out_keys=["return_to_go_single"] + ) reward_scale = RewardScaling( - loc=0, scale=reward_scaling, in_keys="return_to_go", standard_normal=False + loc=0, + scale=reward_scaling, + in_keys="return_to_go_single", + out_keys=["return_to_go"], + standard_normal=False, ) crop_seq = RandomCropTensorDict(sub_seq_len=rb_cfg.stacked_frames, sample_dim=-1) @@ -230,12 +245,17 @@ def make_offline_replay_buffer(rb_cfg, reward_scaling): def make_online_replay_buffer(offline_buffer, rb_cfg, reward_scaling=0.001): - r2g = Reward2GoTransform(gamma=1.0, out_keys=["return_to_go"]) + r2g = Reward2GoTransform(gamma=1.0, out_keys=["return_to_go_single"]) reward_scale = RewardScaling( - loc=0, scale=reward_scaling, in_keys="return_to_go", standard_normal=False + loc=0, + scale=reward_scaling, + in_keys=["return_to_go_single"], + out_keys=["return_to_go"], + standard_normal=False, ) catframes = CatFrames( - in_keys=["return_to_go"], + in_keys=["return_to_go_single"], + out_keys=["return_to_go"], N=rb_cfg.stacked_frames, dim=-2, padding="zeros", diff --git a/test/mocking_classes.py b/test/mocking_classes.py index a689db25748..91676699997 100644 --- a/test/mocking_classes.py +++ b/test/mocking_classes.py @@ -203,11 +203,7 @@ def _step(self, tensordict): done = self.counter >= self.max_val done = torch.tensor([done], dtype=torch.bool, device=self.device) return TensorDict( - { - "next": TensorDict( - {"reward": n, "done": done, "observation": n.clone()}, batch_size=[] - ) - }, + {"reward": n, "done": done, "observation": n.clone()}, batch_size=[], ) @@ -338,13 +334,7 @@ def _step(self, tensordict): device=self.device, ) return TensorDict( - { - "next": TensorDict( - {"reward": n, "done": done, "observation": n}, - tensordict.batch_size, - device=self.device, - ) - }, + {"reward": n, "done": done, "observation": n}, batch_size=tensordict.batch_size, device=self.device, ) @@ -501,7 +491,7 @@ def _step( done = torch.zeros_like(done).all(-1).unsqueeze(-1) tensordict.set("reward", reward.to(torch.get_default_dtype())) tensordict.set("done", done) - return tensordict.select().set("next", tensordict) + return tensordict class ContinuousActionVecMockEnv(_MockEnv): @@ -603,7 +593,7 @@ def _step( done = reward = done.unsqueeze(-1) tensordict.set("reward", reward.to(torch.get_default_dtype())) tensordict.set("done", done) - return tensordict.select().set("next", tensordict) + return tensordict def _obs_step(self, obs, a): return obs + a / self.maxstep @@ -1044,7 +1034,7 @@ def _step( batch_size=self.batch_size, device=self.device, ) - return tensordict.select().set("next", tensordict) + return tensordict class NestedCountingEnv(CountingEnv): @@ -1167,7 +1157,7 @@ def _step(self, td): td = td.clone() td["data"].batch_size = self.batch_size td[self.action_key] = td[self.action_key].max(-2)[0] - td_root = super()._step(td) + next_td = super()._step(td) if self.nested_obs_action: td[self.action_key] = ( td[self.action_key] @@ -1176,7 +1166,7 @@ def _step(self, td): ) if "data" in td.keys(): td["data"].batch_size = (*self.batch_size, self.nested_dim) - td = td_root["next"] + td = next_td if self.nested_done: td[self.done_key] = ( td["done"].unsqueeze(-1).expand(*self.batch_size, self.nested_dim, 1) @@ -1196,7 +1186,7 @@ def _step(self, td): del td["reward"] if "data" in td.keys(): td["data"].batch_size = (*self.batch_size, self.nested_dim) - return td_root + return td class CountingBatchedEnv(EnvBase): @@ -1290,7 +1280,7 @@ def _step( batch_size=self.batch_size, device=self.device, ) - return tensordict.select().set("next", tensordict) + return tensordict class HeteroCountingEnvPolicy: @@ -1479,7 +1469,7 @@ def _step( self.count > self.max_steps, self.done_spec.shape ) - return td.select().set("next", td) + return td def _set_seed(self, seed: Optional[int]): torch.manual_seed(seed) @@ -1713,7 +1703,7 @@ def _step( td.update(reward) assert td.batch_size == self.batch_size - return td.select().set("next", td) + return td def _set_seed(self, seed: Optional[int]): torch.manual_seed(seed) diff --git a/test/test_collector.py b/test/test_collector.py index 17eed15409c..7d8979b43c0 100644 --- a/test/test_collector.py +++ b/test/test_collector.py @@ -353,52 +353,52 @@ def make_env(): assert _data["next", "reward"].sum(-2).min() == -21 -@pytest.mark.parametrize("num_env", [1, 2]) -@pytest.mark.parametrize("env_name", ["vec"]) -def test_collector_done_persist(num_env, env_name, seed=5): - if num_env == 1: - - def env_fn(seed): - env = MockSerialEnv(device="cpu") - env.set_seed(seed) - return env - - else: - - def env_fn(seed): - def make_env(seed): - env = MockSerialEnv(device="cpu") - env.set_seed(seed) - return env - - env = ParallelEnv( - num_workers=num_env, - create_env_fn=make_env, - create_env_kwargs=[{"seed": i} for i in range(seed, seed + num_env)], - allow_step_when_done=True, - ) - env.set_seed(seed) - return env - - policy = make_policy(env_name) - - collector = SyncDataCollector( - create_env_fn=env_fn, - create_env_kwargs={"seed": seed}, - policy=policy, - frames_per_batch=200 * num_env, - max_frames_per_traj=2000, - total_frames=20000, - device="cpu", - reset_when_done=False, - ) - for _, d in enumerate(collector): # noqa - break - - assert (d["done"].sum(-2) >= 1).all() - assert torch.unique(d["collector", "traj_ids"], dim=-1).shape[-1] == 1 - - del collector +# Deprecated reset_when_done +# @pytest.mark.parametrize("num_env", [1, 2]) +# @pytest.mark.parametrize("env_name", ["vec"]) +# def test_collector_done_persist(num_env, env_name, seed=5): +# if num_env == 1: +# +# def env_fn(seed): +# env = MockSerialEnv(device="cpu") +# env.set_seed(seed) +# return env +# +# else: +# +# def env_fn(seed): +# def make_env(seed): +# env = MockSerialEnv(device="cpu") +# env.set_seed(seed) +# return env +# +# env = ParallelEnv( +# num_workers=num_env, +# create_env_fn=make_env, +# create_env_kwargs=[{"seed": i} for i in range(seed, seed + num_env)], +# ) +# env.set_seed(seed) +# return env +# +# policy = make_policy(env_name) +# +# collector = SyncDataCollector( +# create_env_fn=env_fn, +# create_env_kwargs={"seed": seed}, +# policy=policy, +# frames_per_batch=200 * num_env, +# max_frames_per_traj=2000, +# total_frames=20000, +# device="cpu", +# reset_when_done=False, +# ) +# for _, d in enumerate(collector): # noqa +# break +# +# assert (d["done"].sum(-2) >= 1).all() +# assert torch.unique(d["collector", "traj_ids"], dim=-1).shape[-1] == 1 +# +# del collector @pytest.mark.parametrize("frames_per_batch", [200, 10]) @@ -424,7 +424,6 @@ def make_env(seed): num_workers=num_env, create_env_fn=make_env, create_env_kwargs=[{"seed": i} for i in range(seed, seed + num_env)], - allow_step_when_done=True, ) env.set_seed(seed) return env @@ -1656,11 +1655,9 @@ def _step( self.state += action return TensorDict( { - "next": { - "state": self.state.clone(), - "reward": self.reward_spec.zero(), - "done": self.done_spec.zero(), - } + "state": self.state.clone(), + "reward": self.reward_spec.zero(), + "done": self.done_spec.zero(), }, self.batch_size, ) diff --git a/test/test_env.py b/test/test_env.py index e388974396f..a75b095db4c 100644 --- a/test/test_env.py +++ b/test/test_env.py @@ -5,6 +5,7 @@ import argparse import os.path +import re from collections import defaultdict from functools import partial @@ -247,9 +248,16 @@ def test_rollout_reset(env_name, frame_skip, parallel, truncated_key, seed=0): else: env = SerialEnv(3, envs) env.set_seed(100) + # out = env._single_rollout(100, break_when_any_done=False) out = env.rollout(100, break_when_any_done=False) assert out.names[-1] == "time" assert out.shape == torch.Size([3, 100]) + assert ( + out[..., -1]["step_count"].squeeze().cpu() == torch.tensor([19, 9, 19]) + ).all() + assert ( + out[..., -1]["next", "step_count"].squeeze().cpu() == torch.tensor([20, 10, 20]) + ).all() assert ( out["next", truncated_key].squeeze().sum(-1) == torch.tensor([5, 3, 2]) ).all() @@ -322,7 +330,9 @@ def test_mb_env_batch_lock(self, device, seed=0): td_expanded = td.unsqueeze(-1).expand(10, 2).reshape(-1).to_tensordict() mb_env.step(td) - with pytest.raises(RuntimeError, match="Expected a tensordict with shape"): + with pytest.raises( + RuntimeError, match=re.escape("Expected a tensordict with shape==env.shape") + ): mb_env.step(td_expanded) mb_env = DummyModelBasedEnvBase( @@ -1576,9 +1586,7 @@ def test_batch_unlocked_with_batch_size(device): td_expanded = td.expand(2, 2).reshape(-1).to_tensordict() td = env.step(td) - with pytest.raises( - RuntimeError, match="Expected a tensordict with shape==env.shape, " - ): + with pytest.raises(RuntimeError, match="Expected a tensordict with shape"): env.step(td_expanded) diff --git a/test/test_transforms.py b/test/test_transforms.py index a0d2568208a..f20e505145a 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -1241,7 +1241,8 @@ def test_transform_compose(self, max_steps, device, batch, reset_workers): assert not torch.all(td.get("step_count")) i = 0 while max_steps is None or i < max_steps: - td = step_counter._step(td) + next_td = step_counter._step(td, td.get("next")) + td.set("next", next_td) i += 1 assert torch.all(td.get(("next", "step_count")) == i), ( td.get(("next", "step_count")), @@ -1294,7 +1295,7 @@ def test_transform_no_env(self, max_steps, device, batch, reset_workers): assert not torch.all(td.get("step_count")) i = 0 while max_steps is None or i < max_steps: - td = step_counter._step(td) + td.set("next", step_counter._step(td, td.get("next"))) i += 1 assert torch.all(td.get(("next", "step_count")) == i), ( td.get(("next", "step_count")), @@ -2763,7 +2764,7 @@ def test_transform_no_env(self): with pytest.raises( RuntimeError, match="parent not found for FrameSkipTransform" ): - t._step(tensordict) + t._step(tensordict, tensordict.get("next")) def test_transform_compose(self): t = Compose(FrameSkipTransform(2)) @@ -2771,7 +2772,7 @@ def test_transform_compose(self): with pytest.raises( RuntimeError, match="parent not found for FrameSkipTransform" ): - t._step(tensordict) + t._step(tensordict, tensordict.get("next")) @pytest.mark.skipif(not _has_gym, reason="gym not installed") @pytest.mark.parametrize("skip", [-1, 1, 2, 3]) @@ -3087,7 +3088,8 @@ def test_transform_no_env(self): match="NoopResetEnv.parent not found. Make sure that the parent is set.", ): t.reset(TensorDict({"next": {}}, [])) - t._step(TensorDict({"next": {}}, [])) + td = TensorDict({"next": {}}, []) + t._step(td, td.get("next")) def test_transform_compose(self): t = Compose(NoopResetEnv()) @@ -3096,7 +3098,8 @@ def test_transform_compose(self): match="NoopResetEnv.parent not found. Make sure that the parent is set.", ): t.reset(TensorDict({"next": {}}, [])) - t._step(TensorDict({"next": {}}, [])) + td = TensorDict({"next": {}}, []) + t._step(td, td.get("next")) def test_transform_model(self): t = nn.Sequential(NoopResetEnv(), nn.Identity()) @@ -4257,15 +4260,13 @@ def test_sum_reward(self, keys, device): ) # apply one time, episode_reward should be equal to reward again - td = rs._step(td) - td_next = td["next"] + td_next = rs._step(td, td.get("next")) assert "episode_reward" in td.keys() assert (td_next.get("episode_reward") == td_next.get("reward")).all() # apply a second time, episode_reward should twice the reward td["episode_reward"] = td["next", "episode_reward"] - td = rs._step(td) - td_next = td["next"] + td_next = rs._step(td, td.get("next")) assert (td_next.get("episode_reward") == 2 * td_next.get("reward")).all() # reset environments @@ -4273,8 +4274,7 @@ def test_sum_reward(self, keys, device): rs.reset(td) # apply a third time, episode_reward should be equal to reward again - td = rs._step(td) - td_next = td["next"] + td_next = rs._step(td, td.get("next")) assert (td_next.get("episode_reward") == td_next.get("reward")).all() # test transform_observation_spec @@ -5144,7 +5144,9 @@ def test_transform_compose(self, batch, mode, device): batch_size=batch, ) td = t.reset(td) - td = t._step(td) + next_td = td.get("next") + next_td = t._step(td, next_td) + td.set("next", next_td) if mode == "reduce": assert (td["next", "target_return"] + td["next", "reward"] == 10.0).all() @@ -5218,10 +5220,11 @@ def test_transform_no_env(self, mode, in_key, out_key): t = TargetReturn( target_return=10.0, mode=mode, in_keys=[in_key], out_keys=[out_key] ) - reward = torch.randn(10) - td = TensorDict({("next", in_key): reward}, []) + reward = torch.randn(10, 1) + td = TensorDict({("next", in_key): reward}, [10]) td = t.reset(td) - td = t._step(td) + td_next = t._step(td, td.get("next")) + td.set("next", td_next) if mode == "reduce": assert (td["next", out_key] + td["next", in_key] == 10.0).all() else: @@ -5232,8 +5235,8 @@ def test_transform_model( ): t = TargetReturn(target_return=10.0) model = nn.Sequential(t, nn.Identity()) - reward = torch.randn(10) - td = TensorDict({("next", "reward"): reward}, []) + reward = torch.randn(10, 1) + td = TensorDict({("next", "reward"): reward}, [10]) with pytest.raises( NotImplementedError, match="cannot be executed without a parent" ): @@ -5246,8 +5249,8 @@ def test_transform_rb( ): t = TargetReturn(target_return=10.0) rb = rbclass(storage=LazyTensorStorage(10)) - reward = torch.randn(10) - td = TensorDict({("next", "reward"): reward}, []).expand(10) + reward = torch.randn(10, 1) + td = TensorDict({("next", "reward"): reward}, [10]) rb.append_transform(t) rb.extend(td) with pytest.raises( @@ -7973,12 +7976,13 @@ def test_transform_no_env(self, in_key, out_key): { "action": torch.randn(*batch, 7), "observation": torch.randn(*batch, 7), - "next": {t.in_keys[0]: torch.zeros(*batch, 1)}, "sample_log_prob": torch.randn(*batch), }, batch, ) - t._step(tensordict) + next_td = TensorDict({t.in_keys[0]: torch.zeros(*batch, 1)}, batch) + next_td = t._step(tensordict, next_td) + tensordict.set("next", next_td) assert (tensordict.get("next").get(t.out_keys[0]) != 0).all() def test_transform_compose(self): diff --git a/torchrl/collectors/collectors.py b/torchrl/collectors/collectors.py index 75036c01f7e..26516ad6dd1 100644 --- a/torchrl/collectors/collectors.py +++ b/torchrl/collectors/collectors.py @@ -423,9 +423,6 @@ class SyncDataCollector(DataCollectorBase): The _Interruptor class has methods ´start_collection´ and ´stop_collection´, which allow to implement strategies such as preeptively stopping rollout collection. Default is ``False``. - reset_when_done (bool, optional): if ``True`` (default), an environment - that return a ``True`` value in its ``"done"`` or ``"truncated"`` - entry will be reset at the corresponding indices. Examples: >>> from torchrl.envs.libs.gym import GymEnv @@ -546,6 +543,8 @@ def __init__( self.storing_device = torch.device(storing_device) self.env: EnvBase = env self.closed = False + if not reset_when_done: + raise ValueError("reset_when_done is deprectated.") self.reset_when_done = reset_when_done self.n_env = self.env.batch_size.numel() @@ -691,10 +690,6 @@ def __init__( if split_trajs is None: split_trajs = False - elif not self.reset_when_done and split_trajs: - raise RuntimeError( - "Cannot split trajectories when reset_when_done is False." - ) self.split_trajs = split_trajs self._exclude_private_keys = True self.interruptor = interruptor @@ -848,10 +843,9 @@ def _step_and_maybe_reset(self) -> None: if td_reset.batch_dims: # better cloning here than when passing the td for stacking # cloning is necessary to avoid modifying entries in-place - self._tensordict = self._tensordict.clone() - self._tensordict[traj_done_or_terminated] = td_reset[ - traj_done_or_terminated - ] + self._tensordict = torch.where( + traj_done_or_terminated, td_reset, self._tensordict + ) else: self._tensordict.update(td_reset) @@ -922,7 +916,7 @@ def rollout(self) -> TensorDictBase: def reset(self, index=None, **kwargs) -> None: """Resets the environments to a new initial state.""" # metadata - md = self._tensordict["collector"].clone() + md = self._tensordict.get("collector").clone() if index is not None: # check that the env supports partial reset if prod(self.env.batch_size) == 0: @@ -934,7 +928,7 @@ def reset(self, index=None, **kwargs) -> None: ) _reset[index] = 1 self._tensordict[index].zero_() - self._tensordict["_reset"] = _reset + self._tensordict.set("_reset", _reset) else: _reset = None self._tensordict.zero_() @@ -1356,6 +1350,7 @@ def _run_processes(self) -> None: pipe_child.close() self.procs.append(proc) self.pipes.append(pipe_parent) + for pipe_parent in self.pipes: msg = pipe_parent.recv() if msg != "instantiated": raise RuntimeError(msg) diff --git a/torchrl/data/tensor_specs.py b/torchrl/data/tensor_specs.py index 61864113a26..00b8418ab2f 100644 --- a/torchrl/data/tensor_specs.py +++ b/torchrl/data/tensor_specs.py @@ -2093,7 +2093,11 @@ def __eq__(self, other): and self.domain == other.domain ) - def to_numpy(self, val: TensorDict, safe: bool = None) -> dict: + def to_numpy(self, val: torch.Tensor, safe: bool = None) -> dict: + if safe is None: + safe = _CHECK_SPEC_ENCODE + # if not val.shape and not safe: + # return val.item() return super().to_numpy(val, safe) def to_one_hot(self, val: torch.Tensor, safe: bool = None) -> torch.Tensor: diff --git a/torchrl/envs/common.py b/torchrl/envs/common.py index 2e4ae1fe11d..469d6bd65bc 100644 --- a/torchrl/envs/common.py +++ b/torchrl/envs/common.py @@ -822,6 +822,10 @@ def _get_done_keys(self): self.__dict__["_done_keys"] = keys return keys + @property + def reset_keys(self) -> List[NestedKey]: + return [_replace_last(done_key, "_reset") for done_key in self.done_keys] + @property def done_keys(self) -> List[NestedKey]: """The done keys of an environment. @@ -1123,23 +1127,13 @@ def step(self, tensordict: TensorDictBase) -> TensorDictBase: # sanity check self._assert_tensordict_shape(tensordict) - tensordict_out = self._step(tensordict) - # this tensordict should contain a "next" key - try: - next_tensordict_out = tensordict_out.get("next") - except KeyError: - raise RuntimeError( - "The value returned by env._step must be a tensordict where the " - "values at t+1 have been written under a 'next' entry. This " - f"tensordict couldn't be found in the output, got: {tensordict_out}." - ) - if tensordict_out is tensordict: - raise RuntimeError( - "EnvBase._step should return outplace changes to the input " - "tensordict. Consider emptying the TensorDict first (e.g. tensordict.empty() or " - "tensordict.select()) inside _step before writing new tensors onto this new instance." - ) + next_tensordict = self._step(tensordict) + next_tensordict = self._step_proc_data(next_tensordict) + # tensordict could already have a "next" key + tensordict.set("next", next_tensordict) + return tensordict + def _step_proc_data(self, next_tensordict_out): # TODO: Refactor this using reward spec # unsqueeze rewards if needed # the input tensordict may have more leading dimensions than the batch_size @@ -1178,11 +1172,10 @@ def step(self, tensordict: TensorDictBase) -> TensorDictBase: done = done.view(expected_done_shape) next_tensordict_out.set(done_key, done) - tensordict_out.set("next", next_tensordict_out) - if self.run_type_checks: - for key in self._select_observation_keys(tensordict_out): - obs = tensordict_out.get(key) + # TODO: check these errors + for key in self._select_observation_keys(next_tensordict_out): + obs = next_tensordict_out.get(key) self.observation_spec.type_check(obs, key) for reward_key in self.reward_keys: @@ -1194,7 +1187,7 @@ def step(self, tensordict: TensorDictBase) -> TensorDictBase: ): raise TypeError( f"expected reward.dtype to be {self.output_spec[unravel_key(('full_reward_spec',reward_key))]} " - f"but got {tensordict_out.get(reward_key).dtype}" + f"but got {next_tensordict_out.get(reward_key).dtype}" ) for done_key in self.done_keys: @@ -1205,10 +1198,7 @@ def step(self, tensordict: TensorDictBase) -> TensorDictBase: raise TypeError( f"expected done.dtype to be torch.bool but got {next_tensordict_out.get(done_key).dtype}" ) - # tensordict could already have a "next" key - tensordict.update(tensordict_out) - - return tensordict + return next_tensordict_out def _get_in_keys_to_exclude(self, tensordict): if self._cache_in_keys is None: @@ -1274,8 +1264,9 @@ def reset( _reset_map = {} tensordict_reset = self._reset(tensordict, **kwargs) - if tensordict_reset.device != self.device: - tensordict_reset = tensordict_reset.to(self.device) + # We assume that this is done properly + # if tensordict_reset.device != self.device: + # tensordict_reset = tensordict_reset.to(self.device, non_blocking=True) if tensordict_reset is tensordict: raise RuntimeError( "EnvBase._reset should return outplace changes to the input " @@ -1349,7 +1340,7 @@ def set_state(self): def _assert_tensordict_shape(self, tensordict: TensorDictBase) -> None: if ( - self.batch_locked or self.batch_size != torch.Size([]) + self.batch_locked or self.batch_size != () ) and tensordict.batch_size != self.batch_size: raise RuntimeError( f"Expected a tensordict with shape==env.shape, " @@ -1423,7 +1414,7 @@ def rollout( break_when_any_done: bool = True, return_contiguous: bool = True, tensordict: Optional[TensorDictBase] = None, - ) -> TensorDictBase: + ): """Executes a rollout in the environment. The function will stop as soon as one of the contained environments diff --git a/torchrl/envs/gym_like.py b/torchrl/envs/gym_like.py index 7f641989b7a..aa6a0485261 100644 --- a/torchrl/envs/gym_like.py +++ b/torchrl/envs/gym_like.py @@ -146,15 +146,14 @@ def read_done(self, done): """ return done, done - def read_reward(self, total_reward, step_reward): - """Reads a reward and the total reward so far (in the frame skip loop) and returns a sum of the two. + def read_reward(self, reward): + """Reads the reward and maps it to the reward space. Args: - total_reward (torch.Tensor or TensorDict): total reward so far in the step - step_reward (reward in the format provided by the inner env): reward of this particular step + reward (torch.Tensor or TensorDict): reward to be mapped. """ - return total_reward + self.reward_spec.encode(step_reward, ignore_device=True) + return self.reward_spec.encode(reward) def read_obs( self, observations: Union[Dict[str, Any], torch.Tensor, np.ndarray] @@ -183,7 +182,7 @@ def read_obs( return observations def _step(self, tensordict: TensorDictBase) -> TensorDictBase: - action = tensordict.get("action") + action = tensordict.get(self.action_key) action_np = self.read_action(action) reward = 0 @@ -212,34 +211,29 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: if _reward is None: _reward = self.reward_spec.zero() - reward = self.read_reward(reward, _reward) + reward = reward + _reward if isinstance(done, bool) or ( isinstance(done, np.ndarray) and not len(done) ): done = torch.tensor([done]) - done, do_break = self.read_done(done) if do_break: break + reward = self.read_reward(reward) obs_dict = self.read_obs(obs) if reward is None: reward = torch.tensor(np.nan).expand(self.reward_spec.shape) - # reward = self._to_tensor(reward, dtype=self.reward_spec.dtype) - # done = self._to_tensor(done, dtype=torch.bool) - obs_dict["reward"] = reward - obs_dict["done"] = done - obs_dict = {("next", key): val for key, val in obs_dict.items()} + obs_dict[self.reward_key] = reward + obs_dict[self.done_key] = done - tensordict_out = TensorDict( - obs_dict, batch_size=tensordict.batch_size, device=self.device - ) + tensordict_out = TensorDict(obs_dict, batch_size=tensordict.batch_size) if self.info_dict_reader is not None and info is not None: - self.info_dict_reader(info, tensordict_out.get("next")) - + self.info_dict_reader(info, tensordict_out) + tensordict_out = tensordict_out.to(self.device, non_blocking=True) return tensordict_out def _reset( @@ -253,10 +247,13 @@ def _reset( if len(other) == 1: info = other[0] + source = self.read_obs(obs) + + # if self.done_key not in source: + # source[self.done_key] = self.done_spec.zero() tensordict_out = TensorDict( - source=self.read_obs(obs), + source=source, batch_size=self.batch_size, - device=self.device, ) if self.info_dict_reader is not None and info is not None: self.info_dict_reader(info, tensordict_out) @@ -264,12 +261,8 @@ def _reset( # populate the reset with the items we have not seen from info for key, item in self.observation_spec.items(): if key not in tensordict_out.keys(): - tensordict_out[key] = item.zero() - - tensordict_out.setdefault( - "done", - self.done_spec.zero(), - ) + source[key] = item.zero() + tensordict_out = tensordict_out.to(self.device, non_blocking=True) return tensordict_out def _output_transform(self, step_outputs_tuple: Tuple) -> Tuple: diff --git a/torchrl/envs/libs/brax.py b/torchrl/envs/libs/brax.py index 06c5e4db28a..0119a17daa4 100644 --- a/torchrl/envs/libs/brax.py +++ b/torchrl/envs/libs/brax.py @@ -282,7 +282,6 @@ def _step( out = self._step_with_grad(tensordict) else: out = self._step_without_grad(tensordict) - out = out.select().set("next", out) return out diff --git a/torchrl/envs/libs/jumanji.py b/torchrl/envs/libs/jumanji.py index 690b81f2c47..d27663628b3 100644 --- a/torchrl/envs/libs/jumanji.py +++ b/torchrl/envs/libs/jumanji.py @@ -252,7 +252,6 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: # prepare inputs state = _tensordict_to_object(tensordict.get("state"), self._state_example) action = self.read_action(tensordict.get("action")) - reward = self.reward_spec.zero() # flatten batch size into vector state = _tree_flatten(state, self.batch_size) @@ -268,7 +267,7 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: # collect outputs state_dict = self.read_state(state) obs_dict = self.read_obs(timestep.observation) - reward = self.read_reward(reward, np.asarray(timestep.reward)) + reward = self.read_reward(np.asarray(timestep.reward)) done = timestep.step_type == self.lib.types.StepType.LAST done = _ndarray_to_tensor(done).view(torch.bool).to(self.device) @@ -282,7 +281,7 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: tensordict_out.set("done", done) tensordict_out["state"] = state_dict - return tensordict_out.select().set("next", tensordict_out) + return tensordict_out def _reset( self, tensordict: Optional[TensorDictBase] = None, **kwargs diff --git a/torchrl/envs/libs/openml.py b/torchrl/envs/libs/openml.py index 8cbc9dfb5b4..c7cc7f5cf16 100644 --- a/torchrl/envs/libs/openml.py +++ b/torchrl/envs/libs/openml.py @@ -127,7 +127,7 @@ def _step( self.batch_size, device=self.device, ) - return td.select().set("next", td) + return td def _set_seed(self, seed): self.rng = torch.random.manual_seed(seed) diff --git a/torchrl/envs/libs/vmas.py b/torchrl/envs/libs/vmas.py index e70d5d29bf5..6ce6ebd222e 100644 --- a/torchrl/envs/libs/vmas.py +++ b/torchrl/envs/libs/vmas.py @@ -354,7 +354,7 @@ def _step( if not self.het_specs: agent_tds = agent_tds.to_tensordict() tensordict_out = TensorDict( - source={"next": {"agents": agent_tds, "done": dones}}, + source={"agents": agent_tds, "done": dones}, batch_size=self.batch_size, device=self.device, ) diff --git a/torchrl/envs/model_based/common.py b/torchrl/envs/model_based/common.py index 1a63b0f5c45..8bb4673baec 100644 --- a/torchrl/envs/model_based/common.py +++ b/torchrl/envs/model_based/common.py @@ -167,10 +167,7 @@ def _step( dtype=torch.bool, device=tensordict_out.device, ) - return tensordict_out.select().set( - "next", - tensordict_out.select(*self.observation_spec.keys(), "reward", "done"), - ) + return tensordict_out.select(*self.observation_spec.keys(), "reward", "done") @abc.abstractmethod def _reset(self, tensordict: TensorDict, **kwargs) -> TensorDict: diff --git a/torchrl/envs/transforms/rlhf.py b/torchrl/envs/transforms/rlhf.py index 8ac57bc20ed..dd1f22f12c8 100644 --- a/torchrl/envs/transforms/rlhf.py +++ b/torchrl/envs/transforms/rlhf.py @@ -177,7 +177,12 @@ def _call(self, tensordict: TensorDictBase) -> TensorDictBase: tensordict.set(("next", *self.out_keys[0]), reward + self.coef * kl) return tensordict - _step = _call + def _step( + self, tensordict: TensorDictBase, next_tensordict: TensorDictBase + ) -> TensorDictBase: + with tensordict.unlock_(): + return self._call(tensordict.set("next", next_tensordict)).pop("next") + forward = _call def transform_output_spec(self, output_spec: CompositeSpec) -> CompositeSpec: diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index 3c494352c89..81781b04dec 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -151,8 +151,10 @@ def __init__( out_keys_inv: Optional[Sequence[NestedKey]] = None, ): super().__init__() - if isinstance(in_keys, str): + if isinstance(in_keys, (str, tuple)): in_keys = [in_keys] + if isinstance(out_keys, (str, tuple)): + out_keys = [out_keys] self.in_keys = in_keys if out_keys is None: @@ -225,7 +227,9 @@ def forward(self, tensordict: TensorDictBase) -> TensorDictBase: raise KeyError(f"'{in_key}' not found in tensordict {tensordict}") return tensordict - def _step(self, tensordict: TensorDictBase) -> TensorDictBase: + def _step( + self, tensordict: TensorDictBase, next_tensordict: TensorDictBase + ) -> TensorDictBase: """The parent method of a transform during the ``env.step`` execution. This method should be overwritten whenever the :meth:`~._step` needs to be @@ -237,11 +241,14 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: :meth:`~._step` will only be called by :meth:`TransformedEnv.step` and not by :meth:`TransformedEnv.reset`. + Args: + tensordict (TensorDictBase): data at time t + next_tensordict (TensorDictBase): data at time t+1 + + Returns: the data at t+1 """ - next_tensordict = tensordict.get("next") next_tensordict = self._call(next_tensordict) - tensordict.set("next", next_tensordict) - return tensordict + return next_tensordict def _inv_apply_transform(self, obs: torch.Tensor) -> torch.Tensor: if self.invertible: @@ -584,11 +591,10 @@ def input_spec(self) -> TensorSpec: def _step(self, tensordict: TensorDictBase) -> TensorDictBase: tensordict = tensordict.clone(False) tensordict_in = self.transform.inv(tensordict) - tensordict_out = self.base_env._step(tensordict_in) + next_tensordict = self.base_env._step(tensordict_in) # we want the input entries to remain unchanged - tensordict_out = tensordict.update(tensordict_out) - tensordict_out = self.transform._step(tensordict_out) - return tensordict_out + next_tensordict = self.transform._step(tensordict, next_tensordict) + return next_tensordict def set_seed( self, seed: Optional[int] = None, static_seed: bool = False @@ -797,10 +803,12 @@ def forward(self, tensordict: TensorDictBase) -> TensorDictBase: tensordict = t(tensordict) return tensordict - def _step(self, tensordict: TensorDictBase) -> TensorDictBase: + def _step( + self, tensordict: TensorDictBase, next_tensordict: TensorDictBase + ) -> TensorDictBase: for t in self.transforms: - tensordict = t._step(tensordict) - return tensordict + next_tensordict = t._step(tensordict, next_tensordict) + return next_tensordict def _inv_call(self, tensordict: TensorDictBase) -> TensorDictBase: for t in reversed(self.transforms): @@ -1126,17 +1134,17 @@ def __init__( self.mode = mode def reset(self, tensordict: TensorDict): - init_target_return = torch.full( - size=(*tensordict.batch_size, 1), - fill_value=self.target_return, - dtype=torch.float32, - device=tensordict.device, - ) for out_key in self.out_keys: target_return = tensordict.get(out_key, default=None) if target_return is None: + init_target_return = torch.full( + size=(*tensordict.batch_size, 1), + fill_value=self.target_return, + dtype=torch.float32, + device=tensordict.device, + ) target_return = init_target_return tensordict.set( @@ -1156,28 +1164,25 @@ def _call(self, tensordict: TensorDict) -> TensorDict: raise KeyError(f"'{in_key}' not found in tensordict {tensordict}") return tensordict - def _step(self, tensordict: TensorDictBase) -> TensorDictBase: - # sets the current root target as next target return + def _step( + self, tensordict: TensorDictBase, next_tensordict: TensorDictBase + ) -> TensorDictBase: for out_key in self.out_keys: - tensordict.set(("next", out_key), tensordict.get(out_key)) - return super()._step(tensordict) + next_tensordict.set(out_key, tensordict.get(out_key)) + return super()._step(tensordict, next_tensordict) def _apply_transform( self, reward: torch.Tensor, target_return: torch.Tensor ) -> torch.Tensor: + if target_return.shape != reward.shape: + raise ValueError( + f"The shape of the reward ({reward.shape}) and target return ({target_return.shape}) must match." + ) if self.mode == "reduce": - if reward.ndim == 1 and target_return.ndim == 2: - # if target is stacked - target_return = target_return[-1] - reward - else: - target_return = target_return - reward + target_return = target_return - reward return target_return elif self.mode == "constant": - if reward.ndim == 1 and target_return.ndim == 2: - # if target is stacked - target_return = target_return[-1] - else: - target_return = target_return + target_return = target_return return target_return else: raise ValueError("Unknown mode: {}".format(self.mode)) @@ -2120,7 +2125,7 @@ def _call(self, tensordict: TensorDictBase) -> TensorDictBase: for in_key, out_key in zip(self.in_keys, self.out_keys): # Lazy init of buffers buffer_name = f"_cat_buffers_{in_key}" - data = tensordict[in_key] + data = tensordict.get(in_key) d = data.size(self.dim) buffer = getattr(self, buffer_name) if isinstance(buffer, torch.nn.parameter.UninitializedBuffer): @@ -2290,11 +2295,15 @@ def __init__( loc: Union[float, torch.Tensor], scale: Union[float, torch.Tensor], in_keys: Optional[Sequence[NestedKey]] = None, + out_keys: Optional[Sequence[NestedKey]] = None, standard_normal: bool = False, ): if in_keys is None: in_keys = ["reward"] - super().__init__(in_keys=in_keys) + if out_keys is None: + out_keys = in_keys + + super().__init__(in_keys=in_keys, out_keys=out_keys) if not isinstance(standard_normal, torch.Tensor): standard_normal = torch.tensor(standard_normal) self.register_buffer("standard_normal", standard_normal) @@ -3087,16 +3096,18 @@ def __init__(self, frame_skip: int = 1): raise ValueError("frame_skip should have a value greater or equal to one.") self.frame_skip = frame_skip - def _step(self, tensordict: TensorDictBase) -> TensorDictBase: + def _step( + self, tensordict: TensorDictBase, next_tensordict: TensorDictBase + ) -> TensorDictBase: parent = self.parent if parent is None: raise RuntimeError("parent not found for FrameSkipTransform") reward_key = parent.reward_key - reward = tensordict.get(("next", reward_key)) + reward = next_tensordict.get(reward_key) for _ in range(self.frame_skip - 1): - tensordict = parent._step(tensordict) - reward = reward + tensordict.get(("next", reward_key)) - return tensordict.set(("next", reward_key), reward) + next_tensordict = parent._step(tensordict) + reward = reward + next_tensordict.get(reward_key) + return next_tensordict.set(reward_key, reward) def forward(self, tensordict): raise RuntimeError( @@ -3344,10 +3355,12 @@ def forward(self, tensordict: TensorDictBase) -> TensorDictBase: tensordict.set(key, value) return tensordict - def _step(self, tensordict: TensorDictBase) -> TensorDictBase: + def _step( + self, tensordict: TensorDictBase, next_tensordict: TensorDictBase + ) -> TensorDictBase: for key in self.primers.keys(): - tensordict.setdefault(("next", key), tensordict.get(key, default=None)) - return tensordict + next_tensordict.setdefault(key, tensordict.get(key, default=None)) + return next_tensordict def reset(self, tensordict: TensorDictBase) -> TensorDictBase: """Sets the default values in the input tensordict. @@ -3803,10 +3816,11 @@ def reset(self, tensordict: TensorDictBase) -> TensorDictBase: ) from err return tensordict - def _step(self, tensordict: TensorDictBase) -> TensorDictBase: + def _step( + self, tensordict: TensorDictBase, next_tensordict: TensorDictBase + ) -> TensorDictBase: """Updates the episode rewards with the step rewards.""" # Update episode rewards - next_tensordict = tensordict.get("next") for in_key, out_key in zip(self.in_keys, self.out_keys): if in_key in next_tensordict.keys(include_nested=True): reward = next_tensordict.get(in_key) @@ -3815,8 +3829,7 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: next_tensordict.set(out_key, tensordict.get(out_key) + reward) elif not self.missing_tolerance: raise KeyError(f"'{in_key}' not found in tensordict {tensordict}") - tensordict.set("next", next_tensordict) - return tensordict + return next_tensordict def transform_input_spec(self, input_spec: TensorSpec) -> TensorSpec: state_spec = input_spec["full_state_spec"] @@ -3924,7 +3937,7 @@ def __init__( self.step_count_key = step_count_key super().__init__([]) - def reset(self, tensordict: TensorDictBase) -> TensorDictBase: + def _get_done(self, tensordict): done_key = self.parent.done_key if self.parent else "done" done = tensordict.get(done_key, None) if done is None: @@ -3933,41 +3946,42 @@ def reset(self, tensordict: TensorDictBase) -> TensorDictBase: dtype=self.parent.done_spec.dtype, device=self.parent.done_spec.device, ) + return done + + def reset(self, tensordict: TensorDictBase) -> TensorDictBase: + done = None _reset = tensordict.get( "_reset", # TODO: decide if using done here, or using a default `True` tensor default=None, ) if _reset is None: + done = self._get_done(tensordict) _reset = torch.ones_like(done) - step_count = tensordict.get( - self.step_count_key, - default=None, - ) + step_count = tensordict.get(self.step_count_key, default=None) if step_count is None: + if done is None: + # avoid getting done if not needed + done = self._get_done(tensordict) step_count = torch.zeros_like(done, dtype=torch.int64) - - step_count[_reset] = 0 - tensordict.set( - self.step_count_key, - step_count, - ) + step_count = torch.where(~_reset, step_count, 0) + tensordict.set(self.step_count_key, step_count) if self.max_steps is not None: truncated = step_count >= self.max_steps tensordict.set(self.truncated_key, truncated) return tensordict - def _step(self, tensordict: TensorDictBase) -> TensorDictBase: + def _step( + self, tensordict: TensorDictBase, next_tensordict: TensorDictBase + ) -> TensorDictBase: tensordict = tensordict.clone(False) - step_count = tensordict.get( - self.step_count_key, - ) + step_count = tensordict.get(self.step_count_key) next_step_count = step_count + 1 - tensordict.set(("next", self.step_count_key), next_step_count) + next_tensordict.set(self.step_count_key, next_step_count) if self.max_steps is not None: truncated = next_step_count >= self.max_steps - tensordict.set(("next", self.truncated_key), truncated) - return tensordict + next_tensordict.set(self.truncated_key, truncated) + return next_tensordict def transform_observation_spec( self, observation_spec: CompositeSpec diff --git a/torchrl/envs/transforms/vip.py b/torchrl/envs/transforms/vip.py index d8461d86911..569110b8b2b 100644 --- a/torchrl/envs/transforms/vip.py +++ b/torchrl/envs/transforms/vip.py @@ -369,20 +369,22 @@ def _embed_goal(self, tensordict): ) return tensordict - def _step(self, tensordict: TensorDictBase) -> TensorDictBase: + def _step( + self, tensordict: TensorDictBase, next_tensordict: TensorDictBase + ) -> TensorDictBase: if "goal_embedding" not in tensordict.keys(): tensordict = self._embed_goal(tensordict) last_embedding_key = self.out_keys[0] last_embedding = tensordict.get(last_embedding_key, None) - tensordict = super()._step(tensordict) - cur_embedding = tensordict.get(("next", self.out_keys[0])) + next_tensordict = super()._step(tensordict, next_tensordict) + cur_embedding = next_tensordict.get(self.out_keys[0]) if last_embedding is not None: goal_embedding = tensordict["goal_embedding"] reward = -torch.norm(cur_embedding - goal_embedding, dim=-1) - ( -torch.norm(last_embedding - goal_embedding, dim=-1) ) - tensordict.set(("next", "reward"), reward) - return tensordict + next_tensordict.set("reward", reward) + return next_tensordict def forward(self, tensordict): tensordict = super().forward(tensordict) diff --git a/torchrl/envs/utils.py b/torchrl/envs/utils.py index 2ed90294cb2..7b7a0f9a615 100644 --- a/torchrl/envs/utils.py +++ b/torchrl/envs/utils.py @@ -4,7 +4,10 @@ # LICENSE file in the root directory of this source tree. from __future__ import annotations +import contextlib + import importlib.util +import os import re from typing import List, Union @@ -230,19 +233,17 @@ def _set_single_key(source, dest, key, clone=False): key = (key,) for k in key: try: - val = source.get(k) + val = source._get_str(k, None) if is_tensor_collection(val): - new_val = dest.get(k, None) + new_val = dest._get_str(k, None) if new_val is None: new_val = val.empty() - # dest.set(k, new_val) dest._set_str(k, new_val, inplace=False, validated=True) source = val dest = new_val else: if clone: val = val.clone() - # dest.set(k, val) dest._set_str(k, val, inplace=False, validated=True) # This is a temporary solution to understand if a key is heterogeneous # while not having performance impact when the exception is not raised @@ -562,6 +563,32 @@ def make_composite_from_td(data): return composite +@contextlib.contextmanager +def clear_mpi_env_vars(): + """Clears the MPI of environment variables. + + `from mpi4py import MPI` will call `MPI_Init` by default. + If the child process has MPI environment variables, MPI will think that the child process + is an MPI process just like the parent and do bad things such as hang. + + This context manager is a hacky way to clear those environment variables + temporarily such as when we are starting multiprocessing Processes. + + Yields: + Yields for the context manager + """ + removed_environment = {} + for k, v in list(os.environ.items()): + for prefix in ["OMPI_", "PMI_"]: + if k.startswith(prefix): + removed_environment[k] = v + del os.environ[k] + try: + yield + finally: + os.environ.update(removed_environment) + + def _replace_last(key: NestedKey, new_ending: str) -> NestedKey: if isinstance(key, str): return new_ending diff --git a/torchrl/envs/vec_env.py b/torchrl/envs/vec_env.py index 8c0fce4eaf0..23cfb8d42d4 100644 --- a/torchrl/envs/vec_env.py +++ b/torchrl/envs/vec_env.py @@ -19,7 +19,7 @@ import numpy as np import torch -from tensordict import TensorDict, unravel_key +from tensordict import TensorDict from tensordict._tensordict import _unravel_key_to_tuple from tensordict.tensordict import LazyStackedTensorDict, TensorDictBase from torch import multiprocessing as mp @@ -34,7 +34,7 @@ from torchrl.envs.common import _EnvWrapper, EnvBase from torchrl.envs.env_creator import get_env_metadata -from torchrl.envs.utils import _replace_last, _set_single_key, _sort_keys +from torchrl.envs.utils import _set_single_key, _sort_keys, clear_mpi_env_vars _has_envpool = importlib.util.find_spec("envpool") @@ -117,7 +117,6 @@ class _BatchedEnv(EnvBase): if a list of callable is provided, the environment will be executed as if multiple, diverse tasks were needed, which comes with a slight compute overhead; create_env_kwargs (dict or list of dicts, optional): kwargs to be used with the environments being created; - pin_memory (bool): if True and device is "cpu", calls :obj:`pin_memory` on the tensordicts when created. share_individual_td (bool, optional): if ``True``, a different tensordict is created for every process/worker and a lazy stack is returned. default = None (False if single task); @@ -130,9 +129,6 @@ class _BatchedEnv(EnvBase): It is assumed that all environments will run on the same device as a common shared tensordict will be used to pass data from process to process. The device can be changed after instantiation using :obj:`env.to(device)`. - allow_step_when_done (bool, optional): if ``True``, batched environments can - execute steps after a done state is encountered. - Defaults to ``False``. """ @@ -195,10 +191,15 @@ def __init__( self.create_env_fn = create_env_fn self.create_env_kwargs = create_env_kwargs self.pin_memory = pin_memory + if pin_memory: + raise ValueError("pin_memory for batched envs is deprecated") + self.share_individual_td = bool(share_individual_td) self._share_memory = shared_memory self._memmap = memmap self.allow_step_when_done = allow_step_when_done + if allow_step_when_done: + raise ValueError("allow_step_when_done is deprecated") if self._share_memory and self._memmap: raise RuntimeError( "memmap and shared memory are mutually exclusive features." @@ -324,19 +325,17 @@ def _create_td(self) -> None: shared_tensordict_parent = self._env_tensordict.clone() if self._single_task: - self.env_input_keys = sorted( + self._env_input_keys = sorted( list(self.input_spec["full_action_spec"].keys(True, True)) + list(self.state_spec.keys(True, True)), key=_sort_keys, ) - self.env_output_keys = [] - self.env_obs_keys = [] + self._env_output_keys = [] + self._env_obs_keys = [] for key in self.output_spec["full_observation_spec"].keys(True, True): - self.env_output_keys.append(unravel_key(("next", key))) - self.env_obs_keys.append(key) - self.env_output_keys += [ - unravel_key(("next", key)) for key in self.reward_keys + self.done_keys - ] + self._env_output_keys.append(key) + self._env_obs_keys.append(key) + self._env_output_keys += self.reward_keys + self.done_keys else: env_input_keys = set() for meta_data in self.meta_data: @@ -359,42 +358,51 @@ def _create_td(self) -> None: ].keys(True, True) ) env_output_keys = env_output_keys.union( - unravel_key(("next", key)) - for key in meta_data.specs["output_spec"][ - "full_observation_spec" - ].keys(True, True) + meta_data.specs["output_spec"]["full_observation_spec"].keys( + True, True + ) ) - env_output_keys = env_output_keys.union( - { - unravel_key(("next", key)) - for key in self.reward_keys + self.done_keys - } - ) - self.env_obs_keys = sorted(env_obs_keys, key=_sort_keys) - self.env_input_keys = sorted(env_input_keys, key=_sort_keys) - self.env_output_keys = sorted(env_output_keys, key=_sort_keys) + env_output_keys = env_output_keys.union(self.reward_keys + self.done_keys) + self._env_obs_keys = sorted(env_obs_keys, key=_sort_keys) + self._env_input_keys = sorted(env_input_keys, key=_sort_keys) + self._env_output_keys = sorted(env_output_keys, key=_sort_keys) + reset_keys = self.reset_keys self._selected_keys = ( - set(self.env_output_keys) - .union(self.env_input_keys) - .union(self.env_obs_keys) + set(self._env_output_keys) + .union(self._env_input_keys) + .union(self._env_obs_keys) .union(set(self.done_keys)) ) - self._selected_keys.add("_reset") + self._selected_keys = self._selected_keys.union(reset_keys) - self._selected_reset_keys = self.env_obs_keys + self.done_keys - self._selected_step_keys = self.env_output_keys + # input keys + self._selected_input_keys = { + _unravel_key_to_tuple(key) for key in self._env_input_keys + } + # output keys after reset + self._selected_reset_keys = { + _unravel_key_to_tuple(key) + for key in self._env_obs_keys + self.done_keys + reset_keys + } + # output keys after step + self._selected_step_keys = { + _unravel_key_to_tuple(key) for key in self._env_output_keys + } if self._single_task: shared_tensordict_parent = shared_tensordict_parent.select( *self._selected_keys, + "next", strict=False, ) self.shared_tensordict_parent = shared_tensordict_parent.to(self.device) else: # Multi-task: we share tensordict that *may* have different keys shared_tensordict_parent = [ - tensordict.select(*self._selected_keys, strict=False).to(self.device) + tensordict.select(*self._selected_keys, "next", strict=False).to( + self.device + ) for tensordict in shared_tensordict_parent ] shared_tensordict_parent = torch.stack( @@ -413,12 +421,13 @@ def _create_td(self) -> None: # Multi-task: we share tensordict that *may* have different keys # LazyStacked already stores this so we don't need to do anything self.shared_tensordicts = self.shared_tensordict_parent - if self._share_memory: - for td in self.shared_tensordicts: - td.share_memory_() - elif self._memmap: - for td in self.shared_tensordicts: - td.memmap_() + if self.device.type == "cpu": + if self._share_memory: + for td in self.shared_tensordicts: + td.share_memory_() + elif self._memmap: + for td in self.shared_tensordicts: + td.memmap_() else: if self._share_memory: self.shared_tensordict_parent.share_memory_() @@ -428,10 +437,7 @@ def _create_td(self) -> None: self.shared_tensordict_parent.memmap_() if not self.shared_tensordict_parent.is_memmap(): raise RuntimeError("memmap_() failed") - self.shared_tensordicts = self.shared_tensordict_parent.unbind(0) - if self.pin_memory: - self.shared_tensordict_parent.pin_memory() def _start_workers(self) -> None: """Starts the various envs.""" @@ -540,27 +546,24 @@ def _step( self, tensordict: TensorDict, ) -> TensorDict: - self._assert_tensordict_shape(tensordict) tensordict_in = tensordict.clone(False) + next_td = self.shared_tensordict_parent.get("next") for i in range(self.num_workers): # shared_tensordicts are locked, and we need to select the keys since we update in-place. # There may be unexpected keys, such as "_reset", that we should comfortably ignore here. out_td = self._envs[i]._step(tensordict_in[i]) - out_td.update(tensordict_in[i].select(*self.env_input_keys)) - self.shared_tensordicts[i].update_( - out_td.select(*self.env_input_keys, *self.env_output_keys) - ) + next_td[i].update_(out_td.select(*self._env_output_keys)) # We must pass a clone of the tensordict, as the values of this tensordict # will be modified in-place at further steps if self._single_task: - out = TensorDict({}, batch_size=self.shared_tensordict_parent.shape) + out = TensorDict( + {}, batch_size=self.shared_tensordict_parent.shape, device=self.device + ) for key in self._selected_step_keys: - _set_single_key(self.shared_tensordict_parent, out, key, clone=True) + _set_single_key(next_td, out, key, clone=True) else: # strict=False ensures that non-homogeneous keys are still there - out = self.shared_tensordict_parent.select( - *self._selected_step_keys, strict=False - ).clone() + out = next_td.select(*self._selected_step_keys, strict=False).clone() return out def _shutdown_workers(self) -> None: @@ -584,8 +587,7 @@ def _reset(self, tensordict: TensorDictBase, **kwargs) -> TensorDictBase: missing_reset = False if tensordict is not None: needs_resetting = [False] * self.num_workers - for done_key in self.done_keys: - _reset_key = _replace_last(done_key, "_reset") + for _reset_key in self.reset_keys: _reset = tensordict.get(_reset_key, default=None) if _reset is not None: for i in range(self.num_workers): @@ -613,9 +615,9 @@ def _reset(self, tensordict: TensorDictBase, **kwargs) -> TensorDictBase: # step at the root (since the shared_tensordict did not go through # step_mdp). self.shared_tensordicts[i].update_( - self.shared_tensordicts[i]["next"].select( - *self._selected_reset_keys, strict=False - ) + self.shared_tensordicts[i] + .get("next") + .select(*self._selected_reset_keys, strict=False) ) if tensordict_ is not None: self.shared_tensordicts[i].update_( @@ -624,14 +626,17 @@ def _reset(self, tensordict: TensorDictBase, **kwargs) -> TensorDictBase: continue _td = _env._reset(tensordict=tensordict_, **kwargs) self.shared_tensordicts[i].update_( - _td.select(*self._selected_keys, strict=False) + _td.select(*self._selected_reset_keys, strict=False) ) if self._single_task: # select + clone creates 2 tds, but we can create one only - out = TensorDict({}, batch_size=self.shared_tensordict_parent.shape) + out = TensorDict( + {}, batch_size=self.shared_tensordict_parent.shape, device=self.device + ) for key in self._selected_reset_keys: - _set_single_key(self.shared_tensordict_parent, out, key, clone=True) + if _unravel_key_to_tuple(key)[-1] != "_reset": + _set_single_key(self.shared_tensordict_parent, out, key, clone=True) return out else: return self.shared_tensordict_parent.select( @@ -693,53 +698,60 @@ class ParallelEnv(_BatchedEnv): __doc__ += _BatchedEnv.__doc__ def _start_workers(self) -> None: - _num_workers = self.num_workers + from torchrl.envs.env_creator import EnvCreator + ctx = mp.get_context("spawn") + _num_workers = self.num_workers + self.parent_channels = [] self._workers = [] + self._events = [] if self.device.type == "cuda": self.event = torch.cuda.Event() else: self.event = None - for idx in range(_num_workers): - if self._verbose: - print(f"initiating worker {idx}") - # No certainty which module multiprocessing_context is - channel1, channel2 = ctx.Pipe() - env_fun = self.create_env_fn[idx] - if env_fun.__class__.__name__ != "EnvCreator": - env_fun = CloudpickleWrapper(env_fun) - - w = mp.Process( - target=_run_worker_pipe_shared_mem, - args=( - idx, - channel1, - channel2, - env_fun, - self.create_env_kwargs[idx], - False, - self.env_input_keys, - self.device, - self.allow_step_when_done, - self.has_lazy_inputs, - ), - ) - w.daemon = True - w.start() - channel2.close() - self.parent_channels.append(channel1) - self._workers.append(w) - for channel1 in self.parent_channels: - msg = channel1.recv() + with clear_mpi_env_vars(): + for idx in range(_num_workers): + if self._verbose: + print(f"initiating worker {idx}") + # No certainty which module multiprocessing_context is + parent_pipe, child_pipe = ctx.Pipe() + event = ctx.Event() + self._events.append(event) + env_fun = self.create_env_fn[idx] + if not isinstance(env_fun, EnvCreator): + env_fun = CloudpickleWrapper(env_fun) + + process = ctx.Process( + target=_run_worker_pipe_shared_mem, + args=( + parent_pipe, + child_pipe, + env_fun, + self.create_env_kwargs[idx], + self.device, + event, + self.shared_tensordicts[idx], + self._selected_input_keys, + self._selected_reset_keys, + self._selected_step_keys, + self.has_lazy_inputs, + ), + ) + process.daemon = True + process.start() + child_pipe.close() + self.parent_channels.append(parent_pipe) + self._workers.append(process) + + for parent_pipe in self.parent_channels: + msg = parent_pipe.recv() assert msg == "started" # send shared tensordict to workers - for channel, shared_tensordict in zip( - self.parent_channels, self.shared_tensordicts - ): - channel.send(("init", shared_tensordict)) + for channel in self.parent_channels: + channel.send(("init", None)) self.is_closed = False @_check_start @@ -763,22 +775,15 @@ def load_state_dict(self, state_dict: OrderedDict) -> None: ) for i, channel in enumerate(self.parent_channels): channel.send(("load_state_dict", state_dict[f"worker{i}"])) - for channel in self.parent_channels: - msg, _ = channel.recv() - if msg != "loaded": - raise RuntimeError(f"Expected 'loaded' but received {msg}") + for event in self._events: + event.wait() + event.clear() @_check_start def _step(self, tensordict: TensorDictBase) -> TensorDictBase: - self._assert_tensordict_shape(tensordict) if self._single_task and not self.has_lazy_inputs: # this is faster than update_ but won't work for lazy stacks - for key in self.env_input_keys: - # self.shared_tensordict_parent.set( - # key, - # tensordict.get(key), - # inplace=True, - # ) + for key in self._env_input_keys: key = _unravel_key_to_tuple(key) self.shared_tensordict_parent._set_tuple( key, @@ -788,7 +793,7 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: ) else: self.shared_tensordict_parent.update_( - tensordict.select(*self.env_input_keys, strict=False) + tensordict.select(*self._env_input_keys, strict=False) ) if self.event is not None: self.event.record() @@ -796,37 +801,36 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: for i in range(self.num_workers): self.parent_channels[i].send(("step", None)) - # keys = set() - for i in range(self.num_workers): - msg, data = self.parent_channels[i].recv() - if msg != "step_result": - raise RuntimeError( - f"Expected 'step_result' but received {msg} from worker {i}" - ) - if data is not None: - self.shared_tensordicts[i].update_(data) + completed = set() + while len(completed) < self.num_workers: + for i, event in enumerate(self._events): + if i in completed: + continue + if event.is_set(): + completed.add(i) + event.clear() + # We must pass a clone of the tensordict, as the values of this tensordict # will be modified in-place at further steps + next_td = self.shared_tensordict_parent.get("next") if self._single_task: - out = TensorDict({}, batch_size=self.shared_tensordict_parent.shape) + out = TensorDict( + {}, batch_size=self.shared_tensordict_parent.shape, device=self.device + ) for key in self._selected_step_keys: - _set_single_key(self.shared_tensordict_parent, out, key, clone=True) + _set_single_key(next_td, out, key, clone=True) else: # strict=False ensures that non-homogeneous keys are still there - out = self.shared_tensordict_parent.select( - *self._selected_step_keys, strict=False - ).clone() + out = next_td.select(*self._selected_step_keys, strict=False).clone() return out @_check_start def _reset(self, tensordict: TensorDictBase, **kwargs) -> TensorDictBase: - cmd_out = "reset" missing_reset = False if tensordict is not None: needs_resetting = [False for _ in range(self.num_workers)] - for done_key in self.done_keys: - _reset_key = _replace_last(done_key, "_reset") + for _reset_key in self.reset_keys: _reset = tensordict.get(_reset_key, default=None) if _reset is not None: for i in range(self.num_workers): @@ -837,6 +841,7 @@ def _reset(self, tensordict: TensorDictBase, **kwargs) -> TensorDictBase: if tensordict is None or missing_reset: needs_resetting = [True] * self.num_workers + workers = [] for i, channel in enumerate(self.parent_channels): if tensordict is not None: @@ -853,31 +858,37 @@ def _reset(self, tensordict: TensorDictBase, **kwargs) -> TensorDictBase: # step at the root (since the shared_tensordict did not go through # step_mdp). self.shared_tensordicts[i].update_( - self.shared_tensordicts[i]["next"].select( - *self._selected_reset_keys, strict=False - ) + self.shared_tensordicts[i] + .get("next") + .select(*self._selected_reset_keys, strict=False) ) if tensordict_ is not None: self.shared_tensordicts[i].update_( tensordict_.select(*self._selected_reset_keys, strict=False) ) continue - out = (cmd_out, tensordict_) + out = ("reset", tensordict_) channel.send(out) + workers.append(i) + + completed = set() + while len(completed) < len(workers): + for i in workers: + event = self._events[i] + if i in completed: + continue + if event.is_set(): + completed.add(i) + event.clear() - for i, channel in enumerate(self.parent_channels): - if not needs_resetting[i]: - continue - cmd_in, data = channel.recv() - if cmd_in != "reset_obs": - raise RuntimeError(f"received cmd {cmd_in} instead of reset_obs") - if data is not None: - self.shared_tensordicts[i].update_(data) if self._single_task: # select + clone creates 2 tds, but we can create one only - out = TensorDict({}, batch_size=self.shared_tensordict_parent.shape) + out = TensorDict( + {}, batch_size=self.shared_tensordict_parent.shape, device=self.device + ) for key in self._selected_reset_keys: - _set_single_key(self.shared_tensordict_parent, out, key, clone=True) + if _unravel_key_to_tuple(key)[-1] != "_reset": + _set_single_key(self.shared_tensordict_parent, out, key, clone=True) return out else: return self.shared_tensordict_parent.select( @@ -894,15 +905,9 @@ def _shutdown_workers(self) -> None: for i, channel in enumerate(self.parent_channels): if self._verbose: print(f"closing {i}") - # try: channel.send(("close", None)) - # except: - # raise RuntimeError(f"closing {channel} number {i} failed") - msg, _ = channel.recv() - if msg != "closing": - raise RuntimeError( - f"Expected 'closing' but received {msg} from worker {i}" - ) + self._events[i].wait() + self._events[i].clear() del self.shared_tensordicts, self.shared_tensordict_parent @@ -990,15 +995,16 @@ def _recursively_strip_locks_from_state_dict(state_dict: OrderedDict) -> Ordered def _run_worker_pipe_shared_mem( - idx: int, parent_pipe: connection.Connection, child_pipe: connection.Connection, env_fun: Union[EnvBase, Callable], env_fun_kwargs: Dict[str, Any], - pin_memory: bool, - env_input_keys: Dict[str, Any], device: DEVICE_TYPING = None, - allow_step_when_done: bool = False, + mp_event: mp.Event = None, + shared_tensordict: TensorDictBase = None, + _selected_input_keys=None, + _selected_reset_keys=None, + _selected_step_keys=None, has_lazy_inputs: bool = False, verbose: bool = False, ) -> None: @@ -1020,16 +1026,19 @@ def _run_worker_pipe_shared_mem( ) env = env_fun env = env.to(device) + del env_fun i = -1 initialized = False - # make sure that process can be closed - shared_tensordict = None - local_tensordict = None - child_pipe.send("started") + # _excluded_reset_keys = { + # _unravel_key_to_tuple(env.reward_key), + # # _unravel_key_to_tuple(env.done_key), + # _unravel_key_to_tuple(env.action_key), + # } + while True: try: cmd, data = child_pipe.recv() @@ -1049,8 +1058,10 @@ def _run_worker_pipe_shared_mem( if initialized: raise RuntimeError("worker already initialized") i = 0 - shared_tensordict = data next_shared_tensordict = shared_tensordict.get("next") + shared_tensordict = shared_tensordict.clone(False) + del shared_tensordict["next"] + if not (shared_tensordict.is_shared() or shared_tensordict.is_memmap()): raise RuntimeError( "tensordict must be placed in shared memory (share_memory_() or memmap_())" @@ -1062,57 +1073,31 @@ def _run_worker_pipe_shared_mem( print(f"resetting worker {pid}") if not initialized: raise RuntimeError("call 'init' before resetting") - local_tensordict = data - local_tensordict = env._reset(tensordict=local_tensordict) - if pin_memory: - local_tensordict.pin_memory() - shared_tensordict.update_(local_tensordict) + cur_td = env._reset(tensordict=data) + shared_tensordict.update_(cur_td) if event is not None: event.record() event.synchronize() - out = ("reset_obs", None) - child_pipe.send(out) + mp_event.set() elif cmd == "step": if not initialized: raise RuntimeError("called 'init' before step") i += 1 - if local_tensordict is not None: - if has_lazy_inputs: - local_tensordict.update( - shared_tensordict.select(*env_input_keys, strict=False) - ) - else: - for key in env_input_keys: - # local_tensordict.set(key, shared_tensordict.get(key)) - key = _unravel_key_to_tuple(key) - local_tensordict._set_tuple( - key, - shared_tensordict._get_tuple(key, None), - inplace=False, - validated=True, - ) - else: - local_tensordict = shared_tensordict.clone(recurse=False) - local_tensordict = env._step(local_tensordict) - if pin_memory: - local_tensordict.pin_memory() - msg = "step_result" - next_shared_tensordict.update_(local_tensordict.get("next")) + next_td = env._step(shared_tensordict) + next_shared_tensordict.update_(next_td) if event is not None: event.record() event.synchronize() - out = (msg, None) - child_pipe.send(out) + mp_event.set() elif cmd == "close": - del shared_tensordict, local_tensordict, data + del shared_tensordict, data if not initialized: raise RuntimeError("call 'init' before closing") env.close() del env - - child_pipe.send(("closing", None)) + mp_event.set() child_pipe.close() if verbose: print(f"{pid} closed") @@ -1120,8 +1105,7 @@ def _run_worker_pipe_shared_mem( elif cmd == "load_state_dict": env.load_state_dict(data) - msg = "loaded" - child_pipe.send((msg, None)) + mp_event.set() elif cmd == "state_dict": state_dict = _recursively_strip_locks_from_state_dict(env.state_dict()) @@ -1226,7 +1210,7 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: action = action.to(torch.device("cpu")) step_output = self._env.step(action.numpy()) tensordict_out = self._transform_step_output(step_output) - return tensordict_out.select().set("next", tensordict_out) + return tensordict_out def _get_action_spec(self) -> TensorSpec: # local import to avoid importing gym in the script @@ -1315,7 +1299,9 @@ def _transform_reset_output( else: # All workers were reset - rewrite the whole observation buffer self.obs = TensorDict( - self._treevalue_or_numpy_to_tensor_or_dict(observation), self.batch_size + self._treevalue_or_numpy_to_tensor_or_dict(observation), + self.batch_size, + device=self.device, ) obs = self.obs.clone(False) diff --git a/tutorials/sphinx-tutorials/pendulum.py b/tutorials/sphinx-tutorials/pendulum.py index 17f41430217..85c4226dfb2 100644 --- a/tutorials/sphinx-tutorials/pendulum.py +++ b/tutorials/sphinx-tutorials/pendulum.py @@ -241,16 +241,13 @@ def _step(tensordict): new_th = th + new_thdot * dt reward = -costs.view(*tensordict.shape, 1) done = torch.zeros_like(reward, dtype=torch.bool) - # The output must be written in a ``"next"`` entry out = TensorDict( { - "next": { - "th": new_th, - "thdot": new_thdot, - "params": tensordict["params"], - "reward": reward, - "done": done, - } + "th": new_th, + "thdot": new_thdot, + "params": tensordict["params"], + "reward": reward, + "done": done, }, tensordict.shape, ) From 632078e56e7f1bfe6fe0777ea0d129b884932778 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Fri, 1 Sep 2023 11:56:13 +0100 Subject: [PATCH 049/148] [BugFix] Fix RewardSum spec transform to mimic reward spec (#1478) Signed-off-by: Matteo Bettini --- torchrl/envs/transforms/transforms.py | 33 ++++++++++++++++++++------- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index 81781b04dec..11715e56033 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -16,6 +16,7 @@ import torch from tensordict import unravel_key, unravel_key_list +from tensordict._tensordict import _unravel_key_to_tuple from tensordict.nn import dispatch from tensordict.tensordict import TensorDict, TensorDictBase from tensordict.utils import expand_as_right, NestedKey @@ -3835,15 +3836,31 @@ def transform_input_spec(self, input_spec: TensorSpec) -> TensorSpec: state_spec = input_spec["full_state_spec"] if state_spec is None: state_spec = CompositeSpec(shape=input_spec.shape, device=input_spec.device) - reward_spec = self.parent.reward_spec + reward_spec = self.parent.output_spec["full_reward_spec"] + reward_spec_keys = list(reward_spec.keys(True, True)) # Define episode specs for all out_keys - for out_key in self.out_keys: - episode_spec = UnboundedContinuousTensorSpec( - shape=reward_spec.shape, - device=reward_spec.device, - dtype=reward_spec.dtype, - ) - state_spec[out_key] = episode_spec + for in_key, out_key in zip(self.in_keys, self.out_keys): + if ( + in_key in reward_spec_keys + ): # if this out_key has a corresponding key in reward_spec + out_key = _unravel_key_to_tuple(out_key) + temp_state_spec = state_spec + temp_rew_spec = reward_spec + for sub_key in out_key[:-1]: + if ( + not isinstance(temp_rew_spec, CompositeSpec) + or sub_key not in temp_rew_spec.keys() + ): + break + if sub_key not in temp_state_spec.keys(): + temp_state_spec[sub_key] = temp_rew_spec[sub_key].empty() + temp_rew_spec = temp_rew_spec[sub_key] + temp_state_spec = temp_state_spec[sub_key] + state_spec[out_key] = reward_spec[in_key].clone() + else: + raise ValueError( + f"The in_key: {in_key} is not present in the reward spec {reward_spec}." + ) input_spec["full_state_spec"] = state_spec return input_spec From 77cb35eb172889134124edbdfa80dc19da3618d1 Mon Sep 17 00:00:00 2001 From: Skander Moalla <37197319+skandermoalla@users.noreply.github.com> Date: Fri, 1 Sep 2023 12:58:54 +0200 Subject: [PATCH 050/148] [BugFix] Fix NoopResetEnv behavior when trials exceeded. (#1477) --- test/mocking_classes.py | 19 ++++++++++++++ test/test_transforms.py | 15 +++++++++++ torchrl/envs/transforms/transforms.py | 36 +++++++++++++-------------- 3 files changed, 52 insertions(+), 18 deletions(-) diff --git a/test/mocking_classes.py b/test/mocking_classes.py index 91676699997..b3ccb9caf51 100644 --- a/test/mocking_classes.py +++ b/test/mocking_classes.py @@ -1037,6 +1037,25 @@ def _step( return tensordict +class IncrementingEnv(CountingEnv): + # Same as CountingEnv but always increments the count by 1 regardless of the action. + def _step( + self, + tensordict: TensorDictBase, + ) -> TensorDictBase: + self.count += 1 # The only difference with CountingEnv. + tensordict = TensorDict( + source={ + "observation": self.count.clone(), + "done": self.count > self.max_steps, + "reward": torch.zeros_like(self.count, dtype=torch.float), + }, + batch_size=self.batch_size, + device=self.device, + ) + return tensordict.select().set("next", tensordict) + + class NestedCountingEnv(CountingEnv): # an env with nested reward and done states def __init__( diff --git a/test/test_transforms.py b/test/test_transforms.py index f20e505145a..40037085e8d 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -26,6 +26,7 @@ CountingBatchedEnv, CountingEnvCountPolicy, DiscreteActionConvMockEnvNumpy, + IncrementingEnv, MockBatchedLockedEnv, MockBatchedUnLockedEnv, NestedCountingEnv, @@ -3172,6 +3173,20 @@ def test_noop_reset_env_error(self, random, device, compose): ): transformed_env.reset() + @pytest.mark.parametrize("noops", [0, 2, 8]) + @pytest.mark.parametrize("max_steps", [0, 5, 9]) + def test_noop_reset_limit_exceeded(self, noops, max_steps): + env = IncrementingEnv(max_steps=max_steps) + check_env_specs(env) + noop_reset_env = NoopResetEnv(noops=noops, random=False) + transformed_env = TransformedEnv(env, noop_reset_env) + if noops <= max_steps: # Normal behavior. + result = transformed_env.reset() + assert result["observation"] == noops + elif noops > max_steps: # Raise error as reset limit exceeded. + with pytest.raises(RuntimeError): + transformed_env.reset() + class TestObservationNorm(TransformBase): @pytest.mark.parametrize( diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index 11715e56033..6a726883971 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -3123,8 +3123,11 @@ class NoopResetEnv(Transform): env (EnvBase): env on which the random actions have to be performed. Can be the same env as the one provided to the TransformedEnv class - noops (int, optional): number of actions performed after reset. - Default is `30`. + noops (int, optional): upper-bound on the number of actions + performed after reset. Default is `30`. + If noops is too high such that it results in the env being + done or truncated before the all the noops are applied, + in multiple trials, the transform raises a RuntimeError. random (bool, optional): if False, the number of random ops will always be equal to the noops value. If True, the number of random actions will be randomly selected between 0 and noops. @@ -3133,10 +3136,7 @@ class NoopResetEnv(Transform): """ def __init__(self, noops: int = 30, random: bool = True): - """Sample initial states by taking random number of no-ops on reset. - - No-op is assumed to be action 0. - """ + """Sample initial states by taking random number of no-ops on reset.""" super().__init__([]) self.noops = noops self.random = random @@ -3171,31 +3171,31 @@ def reset(self, tensordict: TensorDictBase) -> TensorDictBase: noops = ( self.noops if not self.random else torch.randint(self.noops, (1,)).item() ) - trial = 0 - while True: + trial = 0 + while trial <= _MAX_NOOPS_TRIALS: i = 0 + while i < noops: i += 1 tensordict = parent.rand_step(tensordict) tensordict = step_mdp(tensordict, exclude_done=False) - if tensordict.get(done_key): + if tensordict.get(done_key) or tensordict.get( + "truncated", torch.tensor(False) + ): tensordict = parent.reset(td_reset.clone(False)) break else: break trial += 1 - if trial > _MAX_NOOPS_TRIALS: - tensordict = parent.rand_step(tensordict) - if tensordict.get(("next", done_key)): - raise RuntimeError( - f"parent is still done after a single random step (i={i})." - ) - break - if tensordict.get(done_key): - raise RuntimeError("NoopResetEnv concluded with done environment") + else: + raise RuntimeError( + f"Parent env was repeatedly done or truncated" + f" before the sampled number of noops (={noops}) could be applied. " + ) + return tensordict.exclude(reward_key, inplace=True) def __repr__(self) -> str: From 160324cf1c6493c394f02adc526769ad0905d17b Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Sat, 2 Sep 2023 06:39:08 +0100 Subject: [PATCH 051/148] [BugFix] Fix LSTM - VecEnv compatibility (#1427) --- test/mocking_classes.py | 14 +++--- test/test_env.py | 2 +- test/test_tensordictmodules.py | 58 +++++++++++++++++++++++- test/test_transforms.py | 11 +++-- torchrl/envs/common.py | 19 ++++++-- torchrl/modules/tensordict_module/rnn.py | 4 +- 6 files changed, 88 insertions(+), 20 deletions(-) diff --git a/test/mocking_classes.py b/test/mocking_classes.py index b3ccb9caf51..504634917bc 100644 --- a/test/mocking_classes.py +++ b/test/mocking_classes.py @@ -421,12 +421,12 @@ def __new__( shape=batch_size, ) if action_spec is None: - action_spec_cls = ( - DiscreteTensorSpec - if categorical_action_encoding - else OneHotDiscreteTensorSpec - ) - action_spec = action_spec_cls(n=7, shape=(*batch_size, 7)) + if categorical_action_encoding: + action_spec_cls = DiscreteTensorSpec + action_spec = action_spec_cls(n=7, shape=batch_size) + else: + action_spec_cls = OneHotDiscreteTensorSpec + action_spec = action_spec_cls(n=7, shape=(*batch_size, 7)) if reward_spec is None: reward_spec = UnboundedContinuousTensorSpec(shape=(1,)) if done_spec is None: @@ -1053,7 +1053,7 @@ def _step( batch_size=self.batch_size, device=self.device, ) - return tensordict.select().set("next", tensordict) + return tensordict class NestedCountingEnv(CountingEnv): diff --git a/test/test_env.py b/test/test_env.py index a75b095db4c..6ad03208e3d 100644 --- a/test/test_env.py +++ b/test/test_env.py @@ -143,7 +143,7 @@ def test_env_seed(env_name, frame_skip, seed=0): env.set_seed(seed) td0b = env.fake_tensordict() td0b = env.reset(tensordict=td0b) - td1b = env.step(td0b.clone().set("action", action)) + td1b = env.step(td0b.exclude("next").clone().set("action", action)) assert_allclose_td(td0a, td0b.select(*td0a.keys())) assert_allclose_td(td1a, td1b) diff --git a/test/test_tensordictmodules.py b/test/test_tensordictmodules.py index a9134dd5ce7..ca1e0e46e57 100644 --- a/test/test_tensordictmodules.py +++ b/test/test_tensordictmodules.py @@ -7,8 +7,14 @@ import pytest import torch +from mocking_classes import DiscreteActionVecMockEnv from tensordict import pad, TensorDict, unravel_key_list -from tensordict.nn import InteractionType, make_functional, TensorDictModule +from tensordict.nn import ( + InteractionType, + make_functional, + TensorDictModule, + TensorDictSequential, +) from torch import nn from torchrl.data.tensor_specs import ( BoundedTensorSpec, @@ -21,6 +27,7 @@ DecisionTransformerInferenceWrapper, DTActor, LSTMModule, + MLP, NormalParamWrapper, OnlineDTActor, ProbabilisticActor, @@ -1765,6 +1772,55 @@ def test_multi_consecutive(self, shape): td_ss["intermediate"], td["intermediate"][..., -1, :] ) + def test_lstm_parallel_env(self): + from torchrl.envs import InitTracker, ParallelEnv, TransformedEnv + + # tests that hidden states are carried over with parallel envs + lstm_module = LSTMModule( + input_size=7, + hidden_size=12, + num_layers=2, + in_key="observation", + out_key="features", + ) + + def create_transformed_env(): + primer = lstm_module.make_tensordict_primer() + env = DiscreteActionVecMockEnv(categorical_action_encoding=True) + env = TransformedEnv(env) + env.append_transform(InitTracker()) + env.append_transform(primer) + return env + + env = ParallelEnv( + create_env_fn=create_transformed_env, + num_workers=2, + ) + + mlp = TensorDictModule( + MLP( + in_features=12, + out_features=7, + num_cells=[], + ), + in_keys=["features"], + out_keys=["logits"], + ) + + actor_model = TensorDictSequential(lstm_module, mlp) + + actor = ProbabilisticActor( + module=actor_model, + in_keys=["logits"], + out_keys=["action"], + distribution_class=torch.distributions.Categorical, + return_log_prob=True, + ) + for break_when_any_done in [False, True]: + data = env.rollout(10, actor, break_when_any_done=break_when_any_done) + assert (data.get("recurrent_state_c") != 0.0).any() + assert (data.get(("next", "recurrent_state_c")) != 0.0).all() + def test_safe_specs(): diff --git a/test/test_transforms.py b/test/test_transforms.py index 40037085e8d..ae4d533cd91 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -430,10 +430,9 @@ def test_transform_env_clone(self): value_at_clone = td["next", "observation"].clone() for _ in range(10): td = env.rand_step(td) - assert (td["next", "observation"] != value_at_clone).any() - assert ( - td["next", "observation"] == env.transform._cat_buffers_observation - ).all() + td = step_mdp(td) + assert (td["observation"] != value_at_clone).any() + assert (td["observation"] == env.transform._cat_buffers_observation).all() assert ( cloned._cat_buffers_observation == env.transform._cat_buffers_observation ).all() @@ -6693,6 +6692,7 @@ def _test_vecnorm_subproc_auto( tensordict = env.reset() for _ in range(10): tensordict = env.rand_step(tensordict) + tensordict = step_mdp(tensordict) queue_out.put(True) msg = queue_in.get(timeout=TIMEOUT) assert msg == "all_done" @@ -6800,11 +6800,13 @@ def _run_parallelenv(parallel_env, queue_in, queue_out): assert msg == "start" for _ in range(10): tensordict = parallel_env.rand_step(tensordict) + tensordict = step_mdp(tensordict) queue_out.put("first round") msg = queue_in.get(timeout=TIMEOUT) assert msg == "start" for _ in range(10): tensordict = parallel_env.rand_step(tensordict) + tensordict = step_mdp(tensordict) queue_out.put("second round") parallel_env.close() queue_out.close() @@ -6884,6 +6886,7 @@ def test_vecnorm_rollout(self, parallel, thr=0.2, N=200): for _ in range(N): td = env_t.rand_step(td) tds.append(td.clone()) + td = step_mdp(td) if td.get("done").any(): td = env_t.reset() tds = torch.stack(tds, 0) diff --git a/torchrl/envs/common.py b/torchrl/envs/common.py index 469d6bd65bc..08ed915ce80 100644 --- a/torchrl/envs/common.py +++ b/torchrl/envs/common.py @@ -1118,6 +1118,9 @@ def step(self, tensordict: TensorDictBase) -> TensorDictBase: Args: tensordict (TensorDictBase): Tensordict containing the action to be taken. + If the input tensordict contains a ``"next"`` entry, the values contained in it + will prevail over the newly computed values. This gives a mechanism + to override the underlying computations. Returns: the input tensordict, modified in place with the resulting observations, done state and reward @@ -1126,10 +1129,13 @@ def step(self, tensordict: TensorDictBase) -> TensorDictBase: """ # sanity check self._assert_tensordict_shape(tensordict) + next_preset = tensordict.get("next", None) next_tensordict = self._step(tensordict) next_tensordict = self._step_proc_data(next_tensordict) - # tensordict could already have a "next" key + if next_preset is not None: + # tensordict could already have a "next" key + next_tensordict.update(next_preset) tensordict.set("next", next_tensordict) return tensordict @@ -1669,11 +1675,14 @@ def fake_tensordict(self) -> TensorDictBase: next_output.update(fake_reward) next_output.update(fake_done) fake_in_out.update(fake_done.clone()) + if "next" not in fake_in_out.keys(): + fake_in_out.set("next", next_output) + else: + fake_in_out.get("next").update(next_output) - fake_td = fake_in_out.set("next", next_output) - fake_td.batch_size = self.batch_size - fake_td = fake_td.to(self.device) - return fake_td + fake_in_out.batch_size = self.batch_size + fake_in_out = fake_in_out.to(self.device) + return fake_in_out class _EnvWrapper(EnvBase, metaclass=abc.ABCMeta): diff --git a/torchrl/modules/tensordict_module/rnn.py b/torchrl/modules/tensordict_module/rnn.py index d511b069612..6baa4ad267d 100644 --- a/torchrl/modules/tensordict_module/rnn.py +++ b/torchrl/modules/tensordict_module/rnn.py @@ -5,11 +5,11 @@ from typing import Optional, Tuple import torch -from tensordict import unravel_key_list +from tensordict import TensorDictBase, unravel_key_list from tensordict.nn import TensorDictModuleBase as ModuleBase -from tensordict.tensordict import NO_DEFAULT, TensorDictBase +from tensordict.tensordict import NO_DEFAULT from tensordict.utils import prod from torch import nn From e96e9de4e7b96d41bbb8b56e7ab3a4c400703a5f Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Sun, 3 Sep 2023 13:28:45 +0100 Subject: [PATCH 052/148] [BugFix] Fix Gym Categorical/One-hot issues (#1482) --- test/mocking_classes.py | 3 ++- test/test_env.py | 2 +- test/test_libs.py | 19 +++++++++++++++++++ test/test_specs.py | 2 +- torchrl/data/tensor_specs.py | 23 +++++++++++------------ torchrl/envs/libs/gym.py | 10 ++++++++++ torchrl/envs/transforms/transforms.py | 2 +- 7 files changed, 45 insertions(+), 16 deletions(-) diff --git a/test/mocking_classes.py b/test/mocking_classes.py index 504634917bc..f3193ce2099 100644 --- a/test/mocking_classes.py +++ b/test/mocking_classes.py @@ -1696,7 +1696,8 @@ def _step( done = self.output_spec["full_done_spec"].zero() td = self.observation_spec.zero() - one_hot_action = tensordict["action"].argmax(-1).unsqueeze(-1) + one_hot_action = tensordict["action"] + one_hot_action = one_hot_action.long().argmax(-1).unsqueeze(-1) reward["reward"] += one_hot_action.to(torch.float) self.count += one_hot_action.to(torch.int) td["observation"] += expand_right(self.count, td["observation"].shape) diff --git a/test/test_env.py b/test/test_env.py index 6ad03208e3d..f5d03ba366c 100644 --- a/test/test_env.py +++ b/test/test_env.py @@ -2013,7 +2013,7 @@ def check_rollout_consistency(td: TensorDict, max_steps: int): == td["next", "observation"][index_batch_size][:-1][~next_is_done] ).all() # Check observation and reward update with count action for root - action_is_count = td["action"].argmax(-1).to(torch.bool) + action_is_count = td["action"].long().argmax(-1).to(torch.bool) assert ( td["next", "observation"][action_is_count] == td["observation"][action_is_count] + 1 diff --git a/test/test_libs.py b/test/test_libs.py index dc03c092c68..cce2d3f75ab 100644 --- a/test/test_libs.py +++ b/test/test_libs.py @@ -292,6 +292,25 @@ def info_reader(info, tensordict): env.rand_step() env.rollout(3) + @implement_for("gymnasium", "0.27.0", None) + def test_one_hot_and_categorical(self): + # tests that one-hot and categorical work ok when an integer is expected as action + cliff_walking = GymEnv("CliffWalking-v0", categorical_action_encoding=True) + cliff_walking.rollout(10) + check_env_specs(cliff_walking) + + cliff_walking = GymEnv("CliffWalking-v0", categorical_action_encoding=False) + cliff_walking.rollout(10) + check_env_specs(cliff_walking) + + @implement_for("gym", None, "0.27.0") + def test_one_hot_and_categorical(self): # noqa: F811 + # we do not skip (bc we may want to make sure nothing is skipped) + # but CliffWalking-v0 in earlier Gym versions uses np.bool, which + # was deprecated after np 1.20, and we don't want to install multiple np + # versions. + return + @implement_for("gym", None, "0.26") def _make_gym_environment(env_name): # noqa: F811 diff --git a/test/test_specs.py b/test/test_specs.py index 6e84e50c103..594f9e8fba7 100644 --- a/test/test_specs.py +++ b/test/test_specs.py @@ -1168,7 +1168,7 @@ def test_one_hot_discrete_action_spec_rand(self): sample = action_spec.rand((100000,)) - sample_list = sample.argmax(-1) + sample_list = sample.long().argmax(-1) sample_list = [sum(sample_list == i).item() for i in range(10)] assert chisquare(sample_list).pvalue > 0.1 diff --git a/torchrl/data/tensor_specs.py b/torchrl/data/tensor_specs.py index 00b8418ab2f..99cbf8cd78b 100644 --- a/torchrl/data/tensor_specs.py +++ b/torchrl/data/tensor_specs.py @@ -1117,7 +1117,7 @@ def __init__( n: int, shape: Optional[torch.Size] = None, device: Optional[DEVICE_TYPING] = None, - dtype: Optional[Union[str, torch.dtype]] = torch.long, + dtype: Optional[Union[str, torch.dtype]] = torch.bool, use_register: bool = False, ): dtype, device = _default_dtype_and_device(dtype, device) @@ -1229,9 +1229,9 @@ def encode( ) -> torch.Tensor: if not isinstance(val, torch.Tensor): if ignore_device: - val = torch.tensor(val, dtype=self.dtype) + val = torch.tensor(val) else: - val = torch.tensor(val, dtype=self.dtype, device=self.device) + val = torch.tensor(val, device=self.device) if space is None: space = self.space @@ -1244,7 +1244,7 @@ def encode( if (val >= space.n).any(): raise AssertionError("Value must be less than action space.") - val = torch.nn.functional.one_hot(val.long(), space.n) + val = torch.nn.functional.one_hot(val.long(), space.n).to(self.dtype) return val def to_numpy(self, val: torch.Tensor, safe: bool = None) -> np.ndarray: @@ -1254,7 +1254,7 @@ def to_numpy(self, val: torch.Tensor, safe: bool = None) -> np.ndarray: if not isinstance(val, torch.Tensor): raise NotImplementedError self.assert_is_in(val) - val = val.argmax(-1).cpu().numpy() + val = val.long().argmax(-1).cpu().numpy() if self.use_register: inv_reg = self.space.register.inverse() vals = [] @@ -1323,14 +1323,13 @@ def to_categorical(self, val: torch.Tensor, safe: bool = None) -> torch.Tensor: safe = _CHECK_SPEC_ENCODE if safe: self.assert_is_in(val) - return val.argmax(-1) + return val.long().argmax(-1) def to_categorical_spec(self) -> DiscreteTensorSpec: """Converts the spec to the equivalent categorical spec.""" return DiscreteTensorSpec( self.space.n, device=self.device, - dtype=self.dtype, shape=self.shape[:-1], ) @@ -1801,7 +1800,7 @@ def __init__( nvec: Sequence[int], shape: Optional[torch.Size] = None, device=None, - dtype=torch.long, + dtype=torch.bool, use_register=False, ): self.nvec = nvec @@ -1943,14 +1942,13 @@ def to_categorical(self, val: torch.Tensor, safe: bool = None) -> torch.Tensor: if safe: self.assert_is_in(val) vals = self._split(val) - return torch.stack([val.argmax(-1) for val in vals], -1) + return torch.stack([val.long().argmax(-1) for val in vals], -1) def to_categorical_spec(self) -> MultiDiscreteTensorSpec: """Converts the spec to the equivalent categorical spec.""" return MultiDiscreteTensorSpec( [_space.n for _space in self.space], device=self.device, - dtype=self.dtype, shape=[*self.shape[:-1], len(self.space)], ) @@ -2122,7 +2120,9 @@ def to_one_hot_spec(self) -> OneHotDiscreteTensorSpec: """Converts the spec to the equivalent one-hot spec.""" shape = [*self.shape, self.space.n] return OneHotDiscreteTensorSpec( - n=self.space.n, shape=shape, device=self.device, dtype=self.dtype + n=self.space.n, + shape=shape, + device=self.device, ) def expand(self, *shape): @@ -2443,7 +2443,6 @@ def to_one_hot_spec(self) -> MultiOneHotDiscreteTensorSpec: return MultiOneHotDiscreteTensorSpec( nvec, device=self.device, - dtype=self.dtype, shape=[*self.shape[:-1], sum(nvec)], ) diff --git a/torchrl/envs/libs/gym.py b/torchrl/envs/libs/gym.py index 2a71cd8f7a1..8e58c0915a6 100644 --- a/torchrl/envs/libs/gym.py +++ b/torchrl/envs/libs/gym.py @@ -419,6 +419,16 @@ def _build_env( env = self._build_gym_env(env, pixels_only) return env + def read_action(self, action): + action = super().read_action(action) + if ( + isinstance(self.action_spec, (OneHotDiscreteTensorSpec, DiscreteTensorSpec)) + and action.size == 1 + ): + # some envs require an integer for indexing + action = int(action) + return action + @implement_for("gym", None, "0.19.0") def _build_gym_env(self, env, pixels_only): # noqa: F811 from .utils import GymPixelObservationWrapper as PixelObservationWrapper diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index 6a726883971..c22aac89866 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -3050,7 +3050,7 @@ def _inv_apply_transform(self, action: torch.Tensor) -> torch.Tensor: raise RuntimeError( f"action.shape[-1]={action.shape[-1]} must match self.max_actions={self.max_actions}." ) - action = action.argmax(-1) # bool to int + action = action.long().argmax(-1) # bool to int idx = action >= self.num_actions_effective if idx.any(): action[idx] = torch.randint(self.num_actions_effective, (idx.sum(),)) From 74444339674f912986fe946ccd547115fd3387da Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Sun, 3 Sep 2023 13:29:06 +0100 Subject: [PATCH 053/148] [Feature] Masking actions (#1421) --- docs/source/reference/envs.rst | 1 + test/test_specs.py | 120 ++++++ test/test_transforms.py | 111 ++++++ torchrl/data/tensor_specs.py | 431 +++++++++++++++++++--- torchrl/envs/__init__.py | 1 + torchrl/envs/transforms/__init__.py | 1 + torchrl/envs/transforms/transforms.py | 146 ++++++++ torchrl/envs/utils.py | 1 + torchrl/modules/distributions/discrete.py | 12 +- 9 files changed, 762 insertions(+), 62 deletions(-) diff --git a/docs/source/reference/envs.rst b/docs/source/reference/envs.rst index a1f40b20ee7..f099c8a6eb5 100644 --- a/docs/source/reference/envs.rst +++ b/docs/source/reference/envs.rst @@ -445,6 +445,7 @@ to be able to create this other composition: Transform TransformedEnv + ActionMask BinarizeReward CatFrames CatTensors diff --git a/test/test_specs.py b/test/test_specs.py index 594f9e8fba7..b551420a6a3 100644 --- a/test/test_specs.py +++ b/test/test_specs.py @@ -3169,6 +3169,126 @@ def get_all_keys(spec: TensorSpec, include_exclusive: bool): return keys +@pytest.mark.parametrize("shape", ((), (1,), (2, 3), (2, 3, 4))) +@pytest.mark.parametrize( + "spectype", ["one_hot", "categorical", "mult_one_hot", "mult_discrete"] +) +@pytest.mark.parametrize("device", get_default_devices()) +@pytest.mark.parametrize("rand_shape", ((), (2,), (2, 3))) +class TestSpecMasking: + def _make_mask(self, shape): + torch.manual_seed(0) + mask = torch.zeros(shape, dtype=torch.bool).bernoulli_() + if len(shape) == 1: + while not mask.any() or mask.all(): + mask = torch.zeros(shape, dtype=torch.bool).bernoulli_() + return mask + mask_view = mask.view(-1, shape[-1]) + for i in range(mask_view.shape[0]): + t = mask_view[i] + while not t.any() or t.all(): + t.copy_(torch.zeros_like(t).bernoulli_()) + return mask + + def _one_hot_spec(self, shape, device, n): + shape = torch.Size([*shape, n]) + mask = self._make_mask(shape).to(device) + return OneHotDiscreteTensorSpec(n, shape, device, mask=mask) + + def _mult_one_hot_spec(self, shape, device, n): + shape = torch.Size([*shape, n + n + 2]) + mask = torch.cat( + [ + self._make_mask(shape[:-1] + (n,)).to(device), + self._make_mask(shape[:-1] + (n + 2,)).to(device), + ], + -1, + ) + return MultiOneHotDiscreteTensorSpec([n, n + 2], shape, device, mask=mask) + + def _discrete_spec(self, shape, device, n): + mask = self._make_mask(torch.Size([*shape, n])).to(device) + return DiscreteTensorSpec(n, shape, device, mask=mask) + + def _mult_discrete_spec(self, shape, device, n): + shape = torch.Size([*shape, 2]) + mask = torch.cat( + [ + self._make_mask(shape[:-1] + (n,)).to(device), + self._make_mask(shape[:-1] + (n + 2,)).to(device), + ], + -1, + ) + return MultiDiscreteTensorSpec([n, n + 2], shape, device, mask=mask) + + def test_equal(self, shape, device, spectype, rand_shape, n=5): + shape = torch.Size(shape) + spec = ( + self._one_hot_spec(shape, device, n=n) + if spectype == "one_hot" + else self._discrete_spec(shape, device, n=n) + if spectype == "categorical" + else self._mult_one_hot_spec(shape, device, n=n) + if spectype == "mult_one_hot" + else self._mult_discrete_spec(shape, device, n=n) + if spectype == "mult_discrete" + else None + ) + spec_clone = spec.clone() + assert spec == spec_clone + assert spec.unsqueeze(0).squeeze(0) == spec + spec.update_mask(~spec.mask) + assert (spec.mask != spec_clone.mask).any() + assert spec != spec_clone + + def test_is_in(self, shape, device, spectype, rand_shape, n=5): + shape = torch.Size(shape) + rand_shape = torch.Size(rand_shape) + spec = ( + self._one_hot_spec(shape, device, n=n) + if spectype == "one_hot" + else self._discrete_spec(shape, device, n=n) + if spectype == "categorical" + else self._mult_one_hot_spec(shape, device, n=n) + if spectype == "mult_one_hot" + else self._mult_discrete_spec(shape, device, n=n) + if spectype == "mult_discrete" + else None + ) + s = spec.rand(rand_shape) + assert spec.is_in(s) + spec.update_mask(~spec.mask) + assert not spec.is_in(s) + + def test_project(self, shape, device, spectype, rand_shape, n=5): + shape = torch.Size(shape) + rand_shape = torch.Size(rand_shape) + spec = ( + self._one_hot_spec(shape, device, n=n) + if spectype == "one_hot" + else self._discrete_spec(shape, device, n=n) + if spectype == "categorical" + else self._mult_one_hot_spec(shape, device, n=n) + if spectype == "mult_one_hot" + else self._mult_discrete_spec(shape, device, n=n) + if spectype == "mult_discrete" + else None + ) + s = spec.rand(rand_shape) + assert (spec.project(s) == s).all() + spec.update_mask(~spec.mask) + sp = spec.project(s) + assert sp.shape == s.shape + if spectype == "one_hot": + assert (sp != s).any(-1).all() + assert (sp.any(-1)).all() + elif spectype == "mult_one_hot": + assert (sp != s).any(-1).all() + assert (sp.sum(-1) == 2).all() + else: + assert (sp != s).all() + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/test/test_transforms.py b/test/test_transforms.py index ae4d533cd91..de9a4fa29d0 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -47,6 +47,7 @@ UnboundedContinuousTensorSpec, ) from torchrl.envs import ( + ActionMask, BinarizeReward, CatFrames, CatTensors, @@ -8183,6 +8184,116 @@ def test_kl_lstm(self): klt(env.rollout(3, policy)) +class TestActionMask(TransformBase): + @property + def _env_class(self): + from torchrl.data import BinaryDiscreteTensorSpec, DiscreteTensorSpec + + class MaskedEnv(EnvBase): + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + self.action_spec = DiscreteTensorSpec(4) + self.state_spec = CompositeSpec( + mask=BinaryDiscreteTensorSpec(4, dtype=torch.bool) + ) + self.observation_spec = CompositeSpec( + obs=UnboundedContinuousTensorSpec(3), + mask=BinaryDiscreteTensorSpec(4, dtype=torch.bool), + ) + self.reward_spec = UnboundedContinuousTensorSpec(1) + + def _reset(self, tensordict): + td = self.observation_spec.rand() + td.update(torch.ones_like(self.state_spec.rand())) + return td + + def _step(self, data): + td = self.observation_spec.rand() + mask = data.get("mask") + action = data.get("action") + mask = mask.scatter(-1, action.unsqueeze(-1), 0) + + td.set("mask", mask) + td.set("reward", self.reward_spec.rand()) + td.set("done", ~(mask.any().view(1))) + return td + + def _set_seed(self, seed): + return seed + + return MaskedEnv + + def test_single_trans_env_check(self): + env = self._env_class() + env = TransformedEnv(env, ActionMask()) + check_env_specs(env) + + def test_serial_trans_env_check(self): + env = SerialEnv(2, lambda: TransformedEnv(self._env_class(), ActionMask())) + check_env_specs(env) + + def test_parallel_trans_env_check(self): + env = ParallelEnv(2, lambda: TransformedEnv(self._env_class(), ActionMask())) + check_env_specs(env) + + def test_trans_serial_env_check(self): + env = TransformedEnv(SerialEnv(2, self._env_class), ActionMask()) + check_env_specs(env) + + def test_trans_parallel_env_check(self): + env = TransformedEnv(ParallelEnv(2, self._env_class), ActionMask()) + check_env_specs(env) + + def test_transform_no_env(self): + t = ActionMask() + with pytest.raises(RuntimeError, match="parent cannot be None"): + t._call(TensorDict({}, [])) + + def test_transform_compose(self): + env = self._env_class() + env = TransformedEnv(env, Compose(ActionMask())) + check_env_specs(env) + + def test_transform_env(self): + env = TransformedEnv(ContinuousActionVecMockEnv(), ActionMask()) + with pytest.raises(ValueError, match="The action spec must be one of"): + env.rollout(2) + env = self._env_class() + env = TransformedEnv(env, ActionMask()) + td = env.reset() + for _ in range(1000): + td = env.rand_action(td) + assert env.action_spec.is_in(td.get("action")) + td = env.step(td) + td = step_mdp(td) + if td.get("done"): + break + else: + raise RuntimeError + assert not td.get("mask").any() + + def test_transform_model(self): + t = ActionMask() + with pytest.raises( + RuntimeError, match="ActionMask must be executed within an environment" + ): + t(TensorDict({}, [])) + + def test_transform_rb(self): + t = ActionMask() + rb = ReplayBuffer(storage=LazyTensorStorage(100)) + rb.append_transform(t) + rb.extend(TensorDict({"a": [1]}, [1]).expand(10)) + with pytest.raises( + RuntimeError, match="ActionMask must be executed within an environment" + ): + rb.sample(3) + + def test_transform_inverse(self): + # no inverse transform + return + + class TestDeviceCastTransform(TransformBase): def test_single_trans_env_check(self): env = ContinuousActionVecMockEnv(device="cpu:0") diff --git a/torchrl/data/tensor_specs.py b/torchrl/data/tensor_specs.py index 99cbf8cd78b..edf84561a23 100644 --- a/torchrl/data/tensor_specs.py +++ b/torchrl/data/tensor_specs.py @@ -545,6 +545,9 @@ def encode( self.assert_is_in(val) return val + def __ne__(self, other): + return not (self == other) + def __setattr__(self, key, value): if key == "shape": value = torch.Size(value) @@ -1119,6 +1122,7 @@ def __init__( device: Optional[DEVICE_TYPING] = None, dtype: Optional[Union[str, torch.dtype]] = torch.bool, use_register: bool = False, + mask: torch.Tensor | None = None, ): dtype, device = _default_dtype_and_device(dtype, device) self.use_register = use_register @@ -1133,6 +1137,17 @@ def __init__( f"Got n={space.n} and shape={shape}." ) super().__init__(shape, space, device, dtype, "discrete") + self.update_mask(mask) + + def update_mask(self, mask): + if mask is not None: + try: + mask = mask.expand(self.shape) + except RuntimeError as err: + raise RuntimeError("Cannot expand mask to the desired shape.") from err + if mask.dtype != torch.bool: + raise ValueError("Only boolean masks are accepted.") + self.mask = mask def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> CompositeSpec: if isinstance(dest, torch.dtype): @@ -1149,6 +1164,7 @@ def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> CompositeSpec: device=dest_device, dtype=dest_dtype, use_register=self.use_register, + mask=self.mask.to(dest) if self.mask is not None else None, ) def clone(self) -> OneHotDiscreteTensorSpec: @@ -1158,6 +1174,7 @@ def clone(self) -> OneHotDiscreteTensorSpec: device=self.device, dtype=self.dtype, use_register=self.use_register, + mask=self.mask.clone() if self.mask is not None else None, ) def expand(self, *shape): @@ -1172,8 +1189,15 @@ def expand(self, *shape): f"The last {self.ndim} of the expanded shape {shape} must match the" f"shape of the {self.__class__.__name__} spec in expand()." ) + mask = self.mask + if mask is not None: + mask = mask.expand(shape) return self.__class__( - n=shape[-1], shape=shape, device=self.device, dtype=self.dtype + n=shape[-1], + shape=shape, + device=self.device, + dtype=self.dtype, + mask=mask, ) def squeeze(self, dim=None): @@ -1185,13 +1209,16 @@ def squeeze(self, dim=None): shape = _squeezed_shape(self.shape, dim) if shape is None: return self - + mask = self.mask + if mask is not None: + mask = mask.reshape(shape) return self.__class__( n=shape[-1], shape=shape, device=self.device, dtype=self.dtype, use_register=self.use_register, + mask=mask, ) def unsqueeze(self, dim: int): @@ -1201,12 +1228,16 @@ def unsqueeze(self, dim: int): ) shape = _unsqueezed_shape(self.shape, dim) + mask = self.mask + if mask is not None: + mask = mask.reshape(shape) return self.__class__( n=shape[-1], shape=shape, device=self.device, dtype=self.dtype, use_register=self.use_register, + mask=mask, ) def rand(self, shape=None) -> torch.Tensor: @@ -1214,10 +1245,21 @@ def rand(self, shape=None) -> torch.Tensor: shape = self.shape[:-1] else: shape = torch.Size([*shape, *self.shape[:-1]]) - n = self.space.n - m = torch.randint(n, (*shape, 1), device=self.device) - out = torch.zeros((*shape, n), device=self.device, dtype=self.dtype) - out.scatter_(-1, m, 1) + mask = self.mask + if mask is None: + n = self.space.n + m = torch.randint(n, shape, device=self.device) + else: + mask = mask.expand(*shape, mask.shape[-1]) + if mask.ndim > 2: + mask_flat = torch.flatten(mask, 0, -2) + else: + mask_flat = mask + shape_out = mask.shape[:-1] + m = torch.multinomial(mask_flat.float(), 1).reshape(shape_out) + out = torch.nn.functional.one_hot(m, self.space.n).to(self.dtype) + # torch.zeros((*shape, self.space.n), device=self.device, dtype=self.dtype) + # out.scatter_(-1, m, 1) return out def encode( @@ -1285,18 +1327,43 @@ def __getitem__(self, idx: SHAPE_INDEX_TYPING): device=self.device, dtype=self.dtype, use_register=self.use_register, + mask=self.mask[idx] if self.mask is not None else None, ) def _project(self, val: torch.Tensor) -> torch.Tensor: - # idx = val.sum(-1) != 1 - out = torch.nn.functional.gumbel_softmax(val.to(torch.float)) - out = (out == out.max(dim=-1, keepdim=True)[0]).to(torch.long) - return out + if self.mask is None: + out = torch.multinomial(val.to(torch.float), 1).squeeze(-1) + out = torch.nn.functional.one_hot(out, self.space.n).to(self.dtype) + return out + shape = self.mask.shape + shape = torch.broadcast_shapes(shape, val.shape) + mask_expand = self.mask.expand(shape) + gathered = mask_expand & val + oob = ~gathered.any(-1) + new_val = torch.multinomial(mask_expand[oob].float(), 1) + val = val.clone() + val[oob] = 0 + val[oob] = torch.scatter(val[oob], -1, new_val, 1) + return val def is_in(self, val: torch.Tensor) -> bool: - return (val.sum(-1) == 1).all() + if self.mask is None: + return (val.sum(-1) == 1).all() + shape = self.mask.shape + shape = torch.broadcast_shapes(shape, val.shape) + mask_expand = self.mask.expand(shape) + gathered = mask_expand & val + return gathered.any(-1).all() def __eq__(self, other): + if not hasattr(other, "mask"): + return False + mask_equal = (self.mask is None and other.mask is None) or ( + isinstance(self.mask, torch.Tensor) + and isinstance(other.mask, torch.Tensor) + and (self.mask.shape == other.mask.shape) + and (self.mask == other.mask).all() + ) return ( type(self) == type(other) and self.shape == other.shape @@ -1305,6 +1372,7 @@ def __eq__(self, other): and self.dtype == other.dtype and self.domain == other.domain and self.use_register == other.use_register + and mask_equal ) def to_categorical(self, val: torch.Tensor, safe: bool = None) -> torch.Tensor: @@ -1331,6 +1399,7 @@ def to_categorical_spec(self) -> DiscreteTensorSpec: self.space.n, device=self.device, shape=self.shape[:-1], + mask=self.mask, ) @@ -1802,6 +1871,7 @@ def __init__( device=None, dtype=torch.bool, use_register=False, + mask: torch.Tensor | None = None, ): self.nvec = nvec dtype, device = _default_dtype_and_device(dtype, device) @@ -1817,8 +1887,23 @@ def __init__( space = BoxList([DiscreteBox(n) for n in nvec]) self.use_register = use_register super(OneHotDiscreteTensorSpec, self).__init__( - shape, space, device, dtype, domain="discrete" + shape, + space, + device, + dtype, + domain="discrete", ) + self.update_mask(mask) + + def update_mask(self, mask): + if mask is not None: + try: + mask = mask.expand(*self.shape) + except RuntimeError as err: + raise RuntimeError("Cannot expand mask to the desired shape.") from err + if mask.dtype != torch.bool: + raise ValueError("Only boolean masks are accepted.") + self.mask = mask def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> CompositeSpec: if isinstance(dest, torch.dtype): @@ -1834,6 +1919,7 @@ def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> CompositeSpec: shape=self.shape, device=dest_device, dtype=dest_dtype, + mask=self.mask.to(dest) if self.mask is not None else None, ) def clone(self) -> MultiOneHotDiscreteTensorSpec: @@ -1842,6 +1928,27 @@ def clone(self) -> MultiOneHotDiscreteTensorSpec: shape=self.shape, device=self.device, dtype=self.dtype, + mask=self.mask.clone() if self.mask is not None else None, + ) + + def __eq__(self, other): + if not hasattr(other, "mask"): + return False + mask_equal = (self.mask is None and other.mask is None) or ( + isinstance(self.mask, torch.Tensor) + and isinstance(other.mask, torch.Tensor) + and (self.mask.shape == other.mask.shape) + and (self.mask == other.mask).all() + ) + return ( + type(self) == type(other) + and self.shape == other.shape + and self.space == other.space + and self.device == other.device + and self.dtype == other.dtype + and self.domain == other.domain + and self.use_register == other.use_register + and mask_equal ) def rand(self, shape: Optional[torch.Size] = None) -> torch.Tensor: @@ -1849,25 +1956,40 @@ def rand(self, shape: Optional[torch.Size] = None) -> torch.Tensor: shape = self.shape[:-1] else: shape = torch.Size([*shape, *self.shape[:-1]]) + mask = self.mask - x = torch.cat( - [ - torch.nn.functional.one_hot( - torch.randint( - space.n, - ( - *shape, - 1, + if mask is None: + x = torch.cat( + [ + torch.nn.functional.one_hot( + torch.randint( + space.n, + ( + *shape, + 1, + ), + device=self.device, ), - device=self.device, - ), - space.n, - ).to(torch.long) - for space in self.space - ], - -1, - ).squeeze(-2) - return x + space.n, + ).to(self.dtype) + for space in self.space + ], + -1, + ).squeeze(-2) + return x + mask = mask.expand(*shape, mask.shape[-1]) + mask_splits = torch.split(mask, [space.n for space in self.space], -1) + out = [] + for _mask in mask_splits: + if mask.ndim > 2: + mask_flat = torch.flatten(_mask, 0, -2) + else: + mask_flat = _mask + shape_out = _mask.shape[:-1] + m = torch.multinomial(mask_flat.float(), 1).reshape(shape_out) + m = torch.nn.functional.one_hot(m, _mask.shape[-1]).to(self.dtype) + out.append(m) + return torch.cat(out, -1) def encode( self, val: Union[np.ndarray, torch.Tensor], *, ignore_device: bool = False @@ -1917,13 +2039,38 @@ def is_in(self, val: torch.Tensor) -> bool: vals = self._split(val) if vals is None: return False - return all( - super(MultiOneHotDiscreteTensorSpec, self).is_in(_val) for _val in vals - ) + return all(spec.is_in(val) for val, spec in zip(vals, self._split_self())) def _project(self, val: torch.Tensor) -> torch.Tensor: vals = self._split(val) - return torch.cat([super()._project(_val) for _val in vals], -1) + return torch.cat( + [spec._project(val) for val, spec in zip(vals, self._split_self())], -1 + ) + + def _split_self(self): + result = [] + device = self.device + dtype = self.dtype + use_register = self.use_register + mask = ( + self.mask.split([space.n for space in self.space], -1) + if self.mask is not None + else [None] * len(self.space) + ) + for _mask, space in zip(mask, self.space): + n = space.n + shape = self.shape[:-1] + (n,) + result.append( + OneHotDiscreteTensorSpec( + n=n, + shape=shape, + device=device, + dtype=dtype, + use_register=use_register, + mask=_mask, + ) + ) + return result def to_categorical(self, val: torch.Tensor, safe: bool = None) -> torch.Tensor: """Converts a given one-hot tensor in categorical format. @@ -1950,6 +2097,7 @@ def to_categorical_spec(self) -> MultiDiscreteTensorSpec: [_space.n for _space in self.space], device=self.device, shape=[*self.shape[:-1], len(self.space)], + mask=self.mask, ) def expand(self, *shape): @@ -1965,8 +2113,13 @@ def expand(self, *shape): f"The last {self.ndim} of the expanded shape {shape} must match the" f"shape of the {self.__class__.__name__} spec in expand()." ) + mask = self.mask.expand(shape) if self.mask is not None else None return self.__class__( - nvec=nvecs, shape=shape, device=self.device, dtype=self.dtype + nvec=nvecs, + shape=shape, + device=self.device, + dtype=self.dtype, + mask=mask, ) def squeeze(self, dim=None): @@ -1978,8 +2131,13 @@ def squeeze(self, dim=None): shape = _squeezed_shape(self.shape, dim) if shape is None: return self + mask = self.mask.reshape(shape) if self.mask is not None else None return self.__class__( - nvec=self.nvec, shape=shape, device=self.device, dtype=self.dtype + nvec=self.nvec, + shape=shape, + device=self.device, + dtype=self.dtype, + mask=mask, ) def unsqueeze(self, dim: int): @@ -1988,8 +2146,9 @@ def unsqueeze(self, dim: int): "Final dimension of MultiOneHotDiscreteTensorSpec must remain unchanged" ) shape = _unsqueezed_shape(self.shape, dim) + mask = self.mask.reshape(shape) if self.mask is not None else None return self.__class__( - nvec=self.nvec, shape=shape, device=self.device, dtype=self.dtype + nvec=self.nvec, shape=shape, device=self.device, dtype=self.dtype, mask=mask ) def __getitem__(self, idx: SHAPE_INDEX_TYPING): @@ -2042,34 +2201,71 @@ class DiscreteTensorSpec(TensorSpec): def __init__( self, n: int, - shape: Optional[torch.Size] = None, - device: Optional[DEVICE_TYPING] = None, - dtype: Optional[Union[str, torch.dtype]] = torch.long, + shape: torch.Size | None = None, + device: DEVICE_TYPING | None = None, + dtype: str | torch.dtype = torch.long, + mask: torch.Tensor | None = None, ): if shape is None: shape = torch.Size([]) dtype, device = _default_dtype_and_device(dtype, device) space = DiscreteBox(n) super().__init__(shape, space, device, dtype, domain="discrete") + self.update_mask(mask) + + def update_mask(self, mask): + if mask is not None: + try: + mask = mask.expand(*self.shape, self.space.n) + except RuntimeError as err: + raise RuntimeError("Cannot expand mask to the desired shape.") from err + if mask.dtype != torch.bool: + raise ValueError("Only boolean masks are accepted.") + self.mask = mask def rand(self, shape=None) -> torch.Tensor: if shape is None: shape = torch.Size([]) - return torch.randint( - 0, - self.space.n, - torch.Size([*shape, *self.shape]), - device=self.device, - dtype=self.dtype, - ) + if self.mask is None: + return torch.randint( + 0, + self.space.n, + torch.Size([*shape, *self.shape]), + device=self.device, + dtype=self.dtype, + ) + mask = self.mask + mask = mask.expand(*shape, *mask.shape) + if mask.ndim > 2: + mask_flat = torch.flatten(mask, 0, -2) + else: + mask_flat = mask + shape_out = mask.shape[:-1] + out = torch.multinomial(mask_flat.float(), 1).reshape(shape_out) + return out def _project(self, val: torch.Tensor) -> torch.Tensor: if val.dtype not in (torch.int, torch.long): val = torch.round(val) - return val.clamp_(min=0, max=self.space.n - 1) + if self.mask is None: + return val.clamp_(min=0, max=self.space.n - 1) + shape = self.mask.shape + shape = torch.Size([*torch.broadcast_shapes(shape[:-1], val.shape), shape[-1]]) + mask_expand = self.mask.expand(shape) + gathered = mask_expand.gather(-1, val.unsqueeze(-1)) + oob = ~gathered.all(-1) + new_val = torch.multinomial(mask_expand[oob].float(), 1).squeeze(-1) + val = torch.masked_scatter(val, oob, new_val) + return val def is_in(self, val: torch.Tensor) -> bool: - return (0 <= val).all() and (val < self.space.n).all() + if self.mask is None: + return (0 <= val).all() and (val < self.space.n).all() + shape = self.mask.shape + shape = torch.Size([*torch.broadcast_shapes(shape[:-1], val.shape), shape[-1]]) + mask_expand = self.mask.expand(shape) + gathered = mask_expand.gather(-1, val.unsqueeze(-1)) + return gathered.all() def __getitem__(self, idx: SHAPE_INDEX_TYPING): """Indexes the current TensorSpec based on the provided index.""" @@ -2082,6 +2278,14 @@ def __getitem__(self, idx: SHAPE_INDEX_TYPING): ) def __eq__(self, other): + if not hasattr(other, "mask"): + return False + mask_equal = (self.mask is None and other.mask is None) or ( + isinstance(self.mask, torch.Tensor) + and isinstance(other.mask, torch.Tensor) + and (self.mask.shape == other.mask.shape) + and (self.mask == other.mask).all() + ) return ( type(self) == type(other) and self.shape == other.shape @@ -2089,6 +2293,7 @@ def __eq__(self, other): and self.device == other.device and self.dtype == other.dtype and self.domain == other.domain + and mask_equal ) def to_numpy(self, val: torch.Tensor, safe: bool = None) -> dict: @@ -2143,16 +2348,31 @@ def expand(self, *shape): def squeeze(self, dim=None): shape = _squeezed_shape(self.shape, dim) + mask = self.mask + if mask is not None: + mask = mask.view(*shape, mask.shape[-1]) + if shape is None: return self return self.__class__( - n=self.space.n, shape=shape, device=self.device, dtype=self.dtype + n=self.space.n, + shape=shape, + device=self.device, + dtype=self.dtype, + mask=mask, ) def unsqueeze(self, dim: int): shape = _unsqueezed_shape(self.shape, dim) + mask = self.mask + if mask is not None: + mask = mask.view(*shape, mask.shape[-1]) return self.__class__( - n=self.space.n, shape=shape, device=self.device, dtype=self.dtype + n=self.space.n, + shape=shape, + device=self.device, + dtype=self.dtype, + mask=mask, ) def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> CompositeSpec: @@ -2174,6 +2394,7 @@ def clone(self) -> DiscreteTensorSpec: shape=self.shape, device=self.device, dtype=self.dtype, + mask=self.mask.clone() if self.mask is not None else None, ) @@ -2305,6 +2526,7 @@ def __init__( shape: Optional[torch.Size] = None, device: Optional[DEVICE_TYPING] = None, dtype: Optional[Union[str, torch.dtype]] = torch.long, + mask: torch.Tensor | None = None, ): if not isinstance(nvec, torch.Tensor): nvec = torch.tensor(nvec) @@ -2328,6 +2550,17 @@ def __init__( super(DiscreteTensorSpec, self).__init__( shape, space, device, dtype, domain="discrete" ) + self.update_mask(mask) + + def update_mask(self, mask): + if mask is not None: + try: + mask = mask.expand(*self.shape[:-1], mask.shape[-1]) + except RuntimeError as err: + raise RuntimeError("Cannot expand mask to the desired shape.") from err + if mask.dtype != torch.bool: + raise ValueError("Only boolean masks are accepted.") + self.mask = mask def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> CompositeSpec: if isinstance(dest, torch.dtype): @@ -2338,8 +2571,32 @@ def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> CompositeSpec: dest_device = torch.device(dest) if dest_device == self.device and dest_dtype == self.dtype: return self + mask = self.mask.to(dest) if self.mask is not None else None return self.__class__( - n=self.nvec.to(dest), shape=None, device=dest_device, dtype=dest_dtype + n=self.nvec.to(dest), + shape=None, + device=dest_device, + dtype=dest_dtype, + mask=mask, + ) + + def __eq__(self, other): + if not hasattr(other, "mask"): + return False + mask_equal = (self.mask is None and other.mask is None) or ( + isinstance(self.mask, torch.Tensor) + and isinstance(other.mask, torch.Tensor) + and (self.mask.shape == other.mask.shape) + and (self.mask == other.mask).all() + ) + return ( + type(self) == type(other) + and self.shape == other.shape + and self.space == other.space + and self.device == other.device + and self.dtype == other.dtype + and self.domain == other.domain + and mask_equal ) def clone(self) -> MultiDiscreteTensorSpec: @@ -2348,6 +2605,7 @@ def clone(self) -> MultiDiscreteTensorSpec: shape=None, device=self.device, dtype=self.dtype, + mask=self.mask.clone() if self.mask is not None else None, ) def _rand(self, space: Box, shape: torch.Size, i: int): @@ -2368,6 +2626,9 @@ def _rand(self, space: Box, shape: torch.Size, i: int): return torch.stack(x, -1) def rand(self, shape: Optional[torch.Size] = None) -> torch.Tensor: + if self.mask is not None: + splits = self._split_self() + return torch.stack([split.rand(shape) for split in splits], -1) if shape is None: shape = self.shape[:-1] else: @@ -2380,7 +2641,42 @@ def rand(self, shape: Optional[torch.Size] = None) -> torch.Tensor: x = x.squeeze(-1) return x + def _split_self(self): + result = [] + device = self.device + dtype = self.dtype + nvec = self.nvec + if nvec.ndim > 1: + nvec = torch.flatten(nvec, 0, -2)[0] + if (self.nvec != nvec).any(): + raise ValueError( + f"Only homogeneous MultiDiscrete specs can be masked, got nvec={self.nvec}." + ) + nvec = nvec.tolist() + mask = ( + self.mask.split(nvec, -1) + if self.mask is not None + else [None] * len(self.space) + ) + for n, _mask in zip(nvec, mask): + shape = self.shape[:-1] + result.append( + DiscreteTensorSpec( + n=n, shape=shape, device=device, dtype=dtype, mask=_mask + ) + ) + return result + def _project(self, val: torch.Tensor) -> torch.Tensor: + if self.mask is not None: + return torch.stack( + [ + spec._project(_val) + for (_val, spec) in zip(val.unbind(-1), self._split_self()) + ], + -1, + ) + val_is_scalar = val.ndim < 1 if val_is_scalar: val = val.unsqueeze(0) @@ -2393,6 +2689,12 @@ def _project(self, val: torch.Tensor) -> torch.Tensor: return val.squeeze(0) if val_is_scalar else val def is_in(self, val: torch.Tensor) -> bool: + if self.mask is not None: + return all( + spec.is_in(_val) + for (_val, spec) in zip(val.unbind(-1), self._split_self()) + ) + if val.ndim < 1: val = val.unsqueeze(0) val_have_wrong_dim = ( @@ -2444,6 +2746,7 @@ def to_one_hot_spec(self) -> MultiOneHotDiscreteTensorSpec: nvec, device=self.device, shape=[*self.shape[:-1], sum(nvec)], + mask=self.mask, ) def expand(self, *shape): @@ -2458,8 +2761,17 @@ def expand(self, *shape): f"The last {self.ndim} of the expanded shape {shape} must match the" f"shape of the {self.__class__.__name__} spec in expand()." ) + mask = ( + self.mask.expand(*shape, self.mask.shape[-1]) + if self.mask is not None + else None + ) return self.__class__( - nvec=self.nvec, shape=shape, device=self.device, dtype=self.dtype + nvec=self.nvec, + shape=shape, + device=self.device, + dtype=self.dtype, + mask=mask, ) def squeeze(self, dim: int | None = None): @@ -2476,9 +2788,11 @@ def squeeze(self, dim: int | None = None): nvec = self.nvec.squeeze() else: nvec = self.nvec.squeeze(dim) - + mask = self.mask + if mask is not None: + mask = mask.view(*shape[:-1], mask.shape[-1]) return self.__class__( - nvec=nvec, shape=shape, device=self.device, dtype=self.dtype + nvec=nvec, shape=shape, device=self.device, dtype=self.dtype, mask=mask ) def unsqueeze(self, dim: int): @@ -2488,8 +2802,15 @@ def unsqueeze(self, dim: int): ) shape = _unsqueezed_shape(self.shape, dim) nvec = self.nvec.unsqueeze(dim) + mask = self.mask + if mask is not None: + mask = mask.view(*shape[:-1], mask.shape[-1]) return self.__class__( - nvec=nvec, shape=shape, device=self.device, dtype=self.dtype + nvec=nvec, + shape=shape, + device=self.device, + dtype=self.dtype, + mask=mask, ) def __getitem__(self, idx: SHAPE_INDEX_TYPING): diff --git a/torchrl/envs/__init__.py b/torchrl/envs/__init__.py index 1fce893fc25..21e7d5b62ad 100644 --- a/torchrl/envs/__init__.py +++ b/torchrl/envs/__init__.py @@ -8,6 +8,7 @@ from .gym_like import default_info_dict_reader, GymLikeEnv from .model_based import ModelBasedEnvBase from .transforms import ( + ActionMask, BinarizeReward, CatFrames, CatTensors, diff --git a/torchrl/envs/transforms/__init__.py b/torchrl/envs/transforms/__init__.py index 2d37bfe5177..d304ce149e5 100644 --- a/torchrl/envs/transforms/__init__.py +++ b/torchrl/envs/transforms/__init__.py @@ -6,6 +6,7 @@ from .r3m import R3MTransform from .rlhf import KLRewardTransform from .transforms import ( + ActionMask, BinarizeReward, CatFrames, CatTensors, diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index c22aac89866..a0316e44c2d 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -29,6 +29,8 @@ ContinuousBox, DEVICE_TYPING, DiscreteTensorSpec, + MultiDiscreteTensorSpec, + MultiOneHotDiscreteTensorSpec, OneHotDiscreteTensorSpec, TensorSpec, UnboundedContinuousTensorSpec, @@ -380,8 +382,49 @@ def clone(self): self_copy.__dict__.update(state) return self_copy + @property + def container(self): + """Returns the env containing the transform. + + Examples: + >>> from torchrl.envs import TransformedEnv, Compose, RewardSum, StepCounter + >>> from torchrl.envs.libs.gym import GymEnv + >>> env = TransformedEnv(GymEnv("Pendulum-v1"), Compose(RewardSum(), StepCounter())) + >>> env.transform[0].container is env + True + """ + if "_container" not in self.__dict__: + raise AttributeError("transform parent uninitialized") + container = self.__dict__["_container"] + if container is None: + return container + while not isinstance(container, EnvBase): + # if it's not an env, it should be a Compose transform + if not isinstance(container, Compose): + raise ValueError( + "A transform parent must be either another Compose transform or an environment object." + ) + compose = container + container = compose.__dict__.get("_container", None) + return container + @property def parent(self) -> Optional[EnvBase]: + """Returns the parent env of the transform. + + The parent env is the env that contains all the transforms up until the current one. + + Examples: + >>> from torchrl.envs import TransformedEnv, Compose, RewardSum, StepCounter + >>> from torchrl.envs.libs.gym import GymEnv + >>> env = TransformedEnv(GymEnv("Pendulum-v1"), Compose(RewardSum(), StepCounter())) + >>> env.transform[1].parent + TransformedEnv( + env=GymEnv(env=Pendulum-v1, batch_size=torch.Size([]), device=cpu), + transform=Compose( + RewardSum(keys=['reward']))) + + """ if self.__dict__.get("_parent", None) is None: if "_container" not in self.__dict__: raise AttributeError("transform parent uninitialized") @@ -4758,3 +4801,106 @@ def _inv_apply_transform( def set_container(self, container): if isinstance(container, EnvBase) or container.parent is not None: raise ValueError(self.ENV_ERR) + + +class ActionMask(Transform): + """An adaptive action masker. + + This transform reads the mask from the input tensordict after the step is executed, + and adapts the mask of the one-hot / categorical action spec. + + .. note:: This transform will fail when used without an environment. + + Examples: + >>> import torch + >>> from torchrl.data.tensor_specs import DiscreteTensorSpec, BinaryDiscreteTensorSpec, UnboundedContinuousTensorSpec, CompositeSpec + >>> from torchrl.envs.transforms import ActionMask, TransformedEnv + >>> from torchrl.envs.common import EnvBase + >>> class MaskedEnv(EnvBase): + ... def __init__(self, *args, **kwargs): + ... super().__init__(*args, **kwargs) + ... self.action_spec = DiscreteTensorSpec(4) + ... self.state_spec = CompositeSpec(mask=BinaryDiscreteTensorSpec(4, dtype=torch.bool)) + ... self.observation_spec = CompositeSpec(obs=UnboundedContinuousTensorSpec(3)) + ... self.reward_spec = UnboundedContinuousTensorSpec(1) + ... + ... def _reset(self, data): + ... td = self.observation_spec.rand() + ... td.update(torch.ones_like(self.state_spec.rand())) + ... return td + ... + ... def _step(self, data): + ... td = self.observation_spec.rand() + ... mask = data.get("mask") + ... action = data.get("action") + ... mask = mask.scatter(-1, action.unsqueeze(-1), 0) + ... + ... td.set("mask", mask) + ... td.set("reward", self.reward_spec.rand()) + ... td.set("done", ~mask.any().view(1)) + ... return td + ... + ... def _set_seed(self, seed): + ... return seed + ... + >>> torch.manual_seed(0) + >>> base_env = MaskedEnv() + >>> env = TransformedEnv(base_env, ActionMask()) + >>> r = env.rollout(10) + >>> env = TransformedEnv(base_env, ActionMask()) + >>> r = env.rollout(10) + >>> r["mask"] + tensor([[ True, True, True, True], + [ True, True, False, True], + [ True, True, False, False], + [ True, False, False, False]]) + + """ + + ACCEPTED_SPECS = ( + OneHotDiscreteTensorSpec, + DiscreteTensorSpec, + MultiOneHotDiscreteTensorSpec, + MultiDiscreteTensorSpec, + ) + SPEC_TYPE_ERROR = "The action spec must be one of {}. Got {} instead." + + def __init__(self, action_key: NestedKey = "action", mask_key: NestedKey = "mask"): + if not isinstance(action_key, (tuple, str)): + raise ValueError( + f"The action key must be a nested key. Got {type(action_key)} instead." + ) + if not isinstance(mask_key, (tuple, str)): + raise ValueError( + f"The mask key must be a nested key. Got {type(mask_key)} instead." + ) + super().__init__( + in_keys=[action_key, mask_key], out_keys=[], in_keys_inv=[], out_keys_inv=[] + ) + + def forward(self, tensordict: TensorDictBase) -> TensorDictBase: + raise RuntimeError("ActionMask must be executed within an environment.") + + def _call(self, tensordict: TensorDictBase) -> TensorDictBase: + parent = self.parent + if parent is None: + raise RuntimeError( + f"{type(self)}.parent cannot be None: make sure this transform is executed within an environment." + ) + mask = tensordict.get(self.in_keys[1]) + action_spec = self.container.action_spec + if not isinstance(action_spec, self.ACCEPTED_SPECS): + raise ValueError( + self.SPEC_TYPE_ERROR.format(self.ACCEPTED_SPECS, type(action_spec)) + ) + action_spec.update_mask(mask) + return tensordict + + def reset(self, tensordict: TensorDictBase) -> TensorDictBase: + action_spec = self.container.action_spec + if not isinstance(action_spec, self.ACCEPTED_SPECS): + raise ValueError( + self.SPEC_TYPE_ERROR.format(self.ACCEPTED_SPECS, type(action_spec)) + ) + action_spec.update_mask(tensordict.get(self.in_keys[1], None)) + return tensordict diff --git a/torchrl/envs/utils.py b/torchrl/envs/utils.py index 7b7a0f9a615..914dce8b67c 100644 --- a/torchrl/envs/utils.py +++ b/torchrl/envs/utils.py @@ -441,6 +441,7 @@ def check_env_specs(env, return_contiguous=True, check_dtype=True, seed=0): # Check specs last_td = real_tensordict[..., -1] + last_td = env.rand_action(last_td) full_action_spec = env.input_spec["full_action_spec"] full_state_spec = env.input_spec["full_state_spec"] full_observation_spec = env.output_spec["full_observation_spec"] diff --git a/torchrl/modules/distributions/discrete.py b/torchrl/modules/distributions/discrete.py index 52d52e3113e..24f1fd087db 100644 --- a/torchrl/modules/distributions/discrete.py +++ b/torchrl/modules/distributions/discrete.py @@ -192,22 +192,20 @@ def sample( ) -> torch.Tensor: if sample_shape is None: sample_shape = torch.Size() + else: + sample_shape = torch.Size(sample_shape) ret = super().sample(sample_shape) if not self._sparse_mask: return ret size = ret.size() - # Python 3.7 doesn't support math.prod - # outer_dim = prod(sample_shape) - # inner_dim = prod(self._mask.size()[:-1]) - outer_dim = torch.empty(sample_shape, device="meta").numel() - inner_dim = self._mask.numel() // self._mask.size(-1) + outer_dim = sample_shape.numel() + inner_dim = self._mask.shape[:-1].numel() idx_3d = self._mask.expand(outer_dim, inner_dim, -1) ret = idx_3d.gather(dim=-1, index=ret.view(outer_dim, inner_dim, 1)) - return ret.view(size) + return ret.reshape(size) - # # # TODO: Improve performance here. def log_prob(self, value: torch.Tensor) -> torch.Tensor: if not self._sparse_mask: return super().log_prob(value) From 66063ae2b77ea29d8d9c22fd78a328e17bd5db26 Mon Sep 17 00:00:00 2001 From: Kushaan Gupta Date: Sun, 3 Sep 2023 13:31:32 -0600 Subject: [PATCH 054/148] [Doc] Update coding_ppo.py (#1483) --- tutorials/sphinx-tutorials/coding_ppo.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorials/sphinx-tutorials/coding_ppo.py b/tutorials/sphinx-tutorials/coding_ppo.py index 3bd283fd4b6..51228e66da1 100644 --- a/tutorials/sphinx-tutorials/coding_ppo.py +++ b/tutorials/sphinx-tutorials/coding_ppo.py @@ -366,7 +366,7 @@ # f_{\theta}(\text{observation}) = \mu_{\theta}(\text{observation}), \sigma^{+}_{\theta}(\text{observation}) # # The only extra-difficulty that is brought up here is to split our output in two -# equal parts and map the second to a scrictly positive space. +# equal parts and map the second to a strictly positive space. # # We design the policy in three steps: # From 71521750932ceb52368040a01776d1039b35273c Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Mon, 4 Sep 2023 19:30:24 +0100 Subject: [PATCH 055/148] [BugFix] Nested key in replay buffer (#1485) --- torchrl/data/replay_buffers/replay_buffers.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/torchrl/data/replay_buffers/replay_buffers.py b/torchrl/data/replay_buffers/replay_buffers.py index a5abfbdb0ba..bb7a56b6304 100644 --- a/torchrl/data/replay_buffers/replay_buffers.py +++ b/torchrl/data/replay_buffers/replay_buffers.py @@ -665,10 +665,11 @@ def __init__(self, *, priority_key: str = "td_error", **kw) -> None: def _get_priority(self, tensordict: TensorDictBase) -> Optional[torch.Tensor]: if "_data" in tensordict.keys(): tensordict = tensordict.get("_data") - if self.priority_key not in tensordict.keys(): + + priority = tensordict.get(self.priority_key, None) + if priority is None: return self._sampler.default_priority try: - priority = tensordict.get(self.priority_key) if priority.numel() > 1: priority = _reduce(priority, self._sampler.reduction) else: From 78cd5760ef9ed79a81ed7dd1ff9cebaa2c1dddd8 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Mon, 4 Sep 2023 19:31:09 +0100 Subject: [PATCH 056/148] [Feature] VMAS: choose between categorical or one-hot actions (#1484) --- examples/multiagent/sac.py | 7 +++++-- examples/multiagent/sac.yaml | 1 + torchrl/envs/libs/vmas.py | 14 ++++++++++++-- 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/examples/multiagent/sac.py b/examples/multiagent/sac.py index ae25038eefd..c9701606d26 100644 --- a/examples/multiagent/sac.py +++ b/examples/multiagent/sac.py @@ -11,7 +11,7 @@ from tensordict.nn import TensorDictModule from tensordict.nn.distributions import NormalParamExtractor from torch import nn -from torch.distributions import Categorical +from torch.distributions import Categorical, OneHotCategorical from torchrl.collectors import SyncDataCollector from torchrl.data import TensorDictReplayBuffer from torchrl.data.replay_buffers.samplers import SamplerWithoutReplacement @@ -52,6 +52,7 @@ def train(cfg: "DictConfig"): # noqa: F821 max_steps=cfg.env.max_steps, device=cfg.env.device, seed=cfg.seed, + categorical_actions=cfg.env.categorical_action, # Scenario kwargs **cfg.env.scenario, ) @@ -148,7 +149,9 @@ def train(cfg: "DictConfig"): # noqa: F821 spec=env.unbatched_action_spec, in_keys=[("agents", "logits")], out_keys=[env.action_key], - distribution_class=Categorical, + distribution_class=OneHotCategorical + if not cfg.env.categorical_action + else Categorical, return_log_prob=True, ) diff --git a/examples/multiagent/sac.yaml b/examples/multiagent/sac.yaml index 98f55045464..ab478ab0dc8 100644 --- a/examples/multiagent/sac.yaml +++ b/examples/multiagent/sac.yaml @@ -2,6 +2,7 @@ seed: 0 env: continuous_actions: True # False for discrete sac + categorical_actions: False max_steps: 100 scenario_name: "balance" scenario: diff --git a/torchrl/envs/libs/vmas.py b/torchrl/envs/libs/vmas.py index 6ce6ebd222e..64bc71d0a5a 100644 --- a/torchrl/envs/libs/vmas.py +++ b/torchrl/envs/libs/vmas.py @@ -105,13 +105,17 @@ class VmasWrapper(_EnvWrapper): available_envs = _get_envs() def __init__( - self, env: "vmas.simulator.environment.environment.Environment" = None, **kwargs + self, + env: "vmas.simulator.environment.environment.Environment" = None, + categorical_actions: bool = True, + **kwargs, ): if env is not None: kwargs["env"] = env if "device" in kwargs.keys() and kwargs["device"] != str(env.device): raise TypeError("Env device is different from vmas device") kwargs["device"] = str(env.device) + self.categorical_actions = categorical_actions super().__init__(**kwargs) @property @@ -165,7 +169,7 @@ def _make_specs( { "action": _gym_to_torchrl_spec_transform( self.action_space[agent_index], - categorical_action_encoding=True, + categorical_action_encoding=self.categorical_actions, device=self.device, remap_state_to_observation=False, ) # shape = (n_actions_per_agent,) @@ -396,6 +400,10 @@ def read_reward(self, rewards): return rewards def read_action(self, action): + if not self.continuous_actions and not self.categorical_actions: + action = self.unbatched_action_spec["agents", "action"].to_categorical( + action + ) agent_actions = [] for i in range(self.n_agents): agent_actions.append(action[:, i, ...]) @@ -468,6 +476,7 @@ def __init__( num_envs: int, continuous_actions: bool = True, max_steps: Optional[int] = None, + categorical_actions: bool = True, seed: Optional[int] = None, **kwargs, ): @@ -481,6 +490,7 @@ def __init__( kwargs["continuous_actions"] = continuous_actions kwargs["max_steps"] = max_steps kwargs["seed"] = seed + kwargs["categorical_actions"] = categorical_actions super().__init__(**kwargs) def _check_kwargs(self, kwargs: Dict): From d70aff6b0aed3257422f9758652bc0173a4355e3 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Tue, 5 Sep 2023 15:13:43 +0100 Subject: [PATCH 057/148] [CI] Fix examples CI (#1489) Signed-off-by: Matteo Bettini --- examples/multiagent/sac.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/examples/multiagent/sac.py b/examples/multiagent/sac.py index c9701606d26..da84a078a06 100644 --- a/examples/multiagent/sac.py +++ b/examples/multiagent/sac.py @@ -19,7 +19,6 @@ from torchrl.envs import RewardSum, TransformedEnv from torchrl.envs.libs.vmas import VmasEnv from torchrl.envs.utils import ExplorationType, set_exploration_type - from torchrl.modules import ProbabilisticActor, TanhNormal, ValueOperator from torchrl.modules.models.multiagent import MultiAgentMLP from torchrl.objectives import DiscreteSACLoss, SACLoss, SoftUpdate, ValueEstimators @@ -52,7 +51,7 @@ def train(cfg: "DictConfig"): # noqa: F821 max_steps=cfg.env.max_steps, device=cfg.env.device, seed=cfg.seed, - categorical_actions=cfg.env.categorical_action, + categorical_actions=cfg.env.categorical_actions, # Scenario kwargs **cfg.env.scenario, ) @@ -150,7 +149,7 @@ def train(cfg: "DictConfig"): # noqa: F821 in_keys=[("agents", "logits")], out_keys=[env.action_key], distribution_class=OneHotCategorical - if not cfg.env.categorical_action + if not cfg.env.categorical_actions else Categorical, return_log_prob=True, ) From 4710106f698e53ba0a0451e69467c9037cd76393 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Tue, 5 Sep 2023 15:14:20 +0100 Subject: [PATCH 058/148] [Feature] Refactor categorical dists: Masked one-hot and pass-through gradients (#1488) Co-authored-by: MateuszGuzek <48548729+MateuszGuzek@users.noreply.github.com> --- test/test_distributions.py | 205 +++++++++++++++++++- torchrl/modules/__init__.py | 2 + torchrl/modules/distributions/__init__.py | 8 +- torchrl/modules/distributions/discrete.py | 220 ++++++++++++++++++++-- 4 files changed, 421 insertions(+), 14 deletions(-) diff --git a/test/test_distributions.py b/test/test_distributions.py index 82b08e81546..c804dcf7e53 100644 --- a/test/test_distributions.py +++ b/test/test_distributions.py @@ -15,10 +15,16 @@ from torchrl.modules import ( NormalParamWrapper, OneHotCategorical, + ReparamGradientStrategy, TanhNormal, TruncatedNormal, ) -from torchrl.modules.distributions import Delta, MaskedCategorical, TanhDelta +from torchrl.modules.distributions import ( + Delta, + MaskedCategorical, + MaskedOneHotCategorical, + TanhDelta, +) from torchrl.modules.distributions.continuous import SafeTanhTransform @@ -346,6 +352,203 @@ def test_sample_sparse(self, neg_inf: float) -> None: torch.testing.assert_close(sample_probs, ref_probs, rtol=1e-5, atol=1e-2) +class TestOneHotCategorical: + def test_one_hot(self): + torch.manual_seed(0) + logits = torch.randn(1, 10) + torch.manual_seed(0) + d = OneHotCategorical(logits=logits) + s_a = d.sample((1,)) + torch.manual_seed(0) + d = OneHotCategorical(probs=torch.softmax(logits, -1)) + s_b = d.sample((1,)) + torch.testing.assert_close(s_a, s_b) + assert s_a.dtype == torch.long + assert s_b.dtype == torch.long + assert s_a.sum(-1) == 1 + assert s_b.sum(-1) == 1 + assert s_a.shape[-1] == 10 + assert s_b.shape[-1] == 10 + + @pytest.mark.parametrize( + "reparam", + (ReparamGradientStrategy.PassThrough, ReparamGradientStrategy.RelaxedOneHot), + ) + def test_reparam(self, reparam): + torch.manual_seed(0) + logits = torch.randn(1, 10, requires_grad=True) + torch.manual_seed(0) + d = OneHotCategorical(logits=logits, grad_method=reparam) + s_a = d.rsample((1,)) + torch.manual_seed(0) + d = OneHotCategorical(probs=torch.softmax(logits, -1), grad_method=reparam) + s_b = d.rsample((1,)) + s_a[s_a.detach().bool()].sum().backward() + assert logits.grad is not None and logits.grad.norm() > 0 + logits.grad = None + s_b[s_b.detach().bool()].sum().backward() + assert logits.grad is not None and logits.grad.norm() > 0 + + +class TestMaskedOneHotCategorical: + def test_errs(self): + with pytest.raises( + ValueError, + match="Either `probs` or `logits` must be specified, but not both", + ): + MaskedOneHotCategorical( + logits=torch.tensor(()), probs=torch.tensor(()), mask=torch.tensor(()) + ) + with pytest.raises(ValueError, match="must be provided"): + MaskedOneHotCategorical(probs=torch.tensor(()), mask=None) + with pytest.raises(ValueError, match="must be provided"): + MaskedOneHotCategorical( + probs=torch.tensor(()), mask=torch.tensor(()), indices=torch.tensor(()) + ) + + @pytest.mark.parametrize("neg_inf", [-float(10.0), -float("inf")]) + @pytest.mark.parametrize("device", get_default_devices()) + @pytest.mark.parametrize("sparse", [True, False]) + @pytest.mark.parametrize("logits", [True, False]) + def test_construction(self, neg_inf, sparse, logits, device): + torch.manual_seed(0) + logits_vals = torch.randn(4, device=device) / 100 # almost equal probabilities + if logits: + logits = logits_vals + probs = None + else: + probs = logits_vals.softmax(-1) + logits = None + + if sparse: + indices = torch.tensor([0, 2, 3], device=device) + mask = None + else: + mask = torch.tensor([True, False, True, True], device=device) + indices = None + dist = MaskedOneHotCategorical( + logits=logits, probs=probs, indices=indices, mask=mask, neg_inf=neg_inf + ) + dist_categ = MaskedCategorical( + logits=logits, probs=probs, indices=indices, mask=mask, neg_inf=neg_inf + ) + for _ in range(10): + sample = dist.sample((100,)) + assert not sample[..., 1].any() + assert torch.isfinite(dist.log_prob(sample)).all() + torch.testing.assert_close( + dist.log_prob(sample), dist_categ.log_prob(sample.argmax(-1)) + ) + assert sample.device == device + + sample_unfeasible = torch.zeros_like(sample) + sample_unfeasible[..., 1] = 1 + if neg_inf == -float("inf"): + assert (dist.log_prob(sample_unfeasible) == neg_inf).all() + else: + assert (dist.log_prob(sample_unfeasible) > -float("inf")).all() + + @pytest.mark.parametrize("neg_inf", [-float(10.0), -float("inf")]) + @pytest.mark.parametrize("sparse", [True, False]) + @pytest.mark.parametrize("logits", [True, False]) + def test_backprop(self, neg_inf, sparse, logits): + torch.manual_seed(0) + logits_vals = ( + torch.randn(4).div_(100).requires_grad_() + ) # almost equal probabilities + if logits: + logits = logits_vals + probs = None + else: + probs = logits_vals.softmax(-1) + logits = None + + if sparse: + indices = torch.tensor([0, 2, 3]) + mask = None + else: + mask = torch.tensor([True, False, True, True]) + indices = None + dist = MaskedOneHotCategorical( + logits=logits, probs=probs, indices=indices, mask=mask, neg_inf=neg_inf + ) + sample = dist.sample((100,)) + lp = dist.log_prob(sample) + lp.sum().backward() + assert logits_vals.grad is not None + + @pytest.mark.parametrize("neg_inf", [-1e20, float("-inf")]) + def test_sample(self, neg_inf: float) -> None: + torch.manual_seed(0) + logits = torch.randn(4) + probs = F.softmax(logits, dim=-1) + mask = torch.tensor([True, False, True, True]) + ref_probs = probs.masked_fill(~mask, 0.0) + ref_probs /= ref_probs.sum(dim=-1, keepdim=True) + + dist = MaskedOneHotCategorical( + probs=probs, + mask=mask, + neg_inf=neg_inf, + ) + num_samples = 10000 + samples = dist.sample([num_samples]).argmax(-1) + sample_probs = torch.bincount(samples) / num_samples + torch.testing.assert_close(sample_probs, ref_probs, rtol=1e-5, atol=1e-2) + + @pytest.mark.parametrize("neg_inf", [-1e20, float("-inf")]) + def test_sample_sparse(self, neg_inf: float) -> None: + torch.manual_seed(0) + logits = torch.randn(4) + probs = F.softmax(logits, dim=-1) + mask = torch.tensor([True, False, True, True]) + indices = torch.tensor([0, 2, 3]) + ref_probs = probs.masked_fill(~mask, 0.0) + ref_probs /= ref_probs.sum(dim=-1, keepdim=True) + + dist = MaskedOneHotCategorical( + logits=logits, + indices=indices, + neg_inf=neg_inf, + ) + num_samples = 10000 + samples = dist.sample([num_samples]).argmax(-1) + sample_probs = torch.bincount(samples) / num_samples + torch.testing.assert_close(sample_probs, ref_probs, rtol=1e-5, atol=1e-2) + + @pytest.mark.parametrize( + "grad_method", + [ReparamGradientStrategy.RelaxedOneHot, ReparamGradientStrategy.PassThrough], + ) + @pytest.mark.parametrize("sparse", [True, False]) + def test_reparam(self, grad_method, sparse): + torch.manual_seed(0) + neg_inf = -float("inf") + logits = torch.randn(100, requires_grad=True) + probs = F.softmax(logits, dim=-1) + # mask = torch.tensor([True, False, True, True]) + # indices = torch.tensor([0, 2, 3]) + if sparse: + indices = torch.randint(100, (70,)).unique().view(-1) + mask = None + else: + mask = torch.zeros(100, dtype=torch.bool).bernoulli_() + indices = None + + dist = MaskedOneHotCategorical( + logits=logits, + indices=indices, + neg_inf=neg_inf, + grad_method=grad_method, + mask=mask, + ) + + s = dist.rsample() + assert s.shape[-1] == 100 + s[s.detach().bool()].sum().backward() + assert logits.grad is not None and logits.grad.norm() > 0 + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/torchrl/modules/__init__.py b/torchrl/modules/__init__.py index a74a598be59..ad654dbc7c9 100644 --- a/torchrl/modules/__init__.py +++ b/torchrl/modules/__init__.py @@ -8,8 +8,10 @@ distributions_maps, IndependentNormal, MaskedCategorical, + MaskedOneHotCategorical, NormalParamWrapper, OneHotCategorical, + ReparamGradientStrategy, TanhDelta, TanhNormal, TruncatedNormal, diff --git a/torchrl/modules/distributions/__init__.py b/torchrl/modules/distributions/__init__.py index ab358adfb00..a3c5d0d4774 100644 --- a/torchrl/modules/distributions/__init__.py +++ b/torchrl/modules/distributions/__init__.py @@ -12,7 +12,13 @@ TanhNormal, TruncatedNormal, ) -from .discrete import __all__ as _all_discrete, MaskedCategorical, OneHotCategorical +from .discrete import ( + __all__ as _all_discrete, + MaskedCategorical, + MaskedOneHotCategorical, + OneHotCategorical, + ReparamGradientStrategy, +) distributions_maps = { distribution_class.lower(): eval(distribution_class) diff --git a/torchrl/modules/distributions/discrete.py b/torchrl/modules/distributions/discrete.py index 24f1fd087db..642addf4bf8 100644 --- a/torchrl/modules/distributions/discrete.py +++ b/torchrl/modules/distributions/discrete.py @@ -3,7 +3,9 @@ # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. -from typing import Optional, Sequence, Union +from enum import Enum +from functools import wraps +from typing import Any, Optional, Sequence, Union import torch import torch.distributions as D @@ -32,6 +34,25 @@ def rand_one_hot(values: torch.Tensor, do_softmax: bool = True) -> torch.Tensor: return out +class _one_hot_wrapper: + def __init__(self, parent_dist): + self.parent_dist = parent_dist + + def __call__(self, func): + @wraps(func) + def wrapped(_self, *args, **kwargs): + out = getattr(self.parent_dist, func.__name__)(_self, *args, **kwargs) + n = _self.num_samples + return torch.nn.functional.one_hot(out, n) + + return wrapped + + +class ReparamGradientStrategy(Enum): + PassThrough: Any = 1 + RelaxedOneHot: Any = 2 + + class OneHotCategorical(D.Categorical): """One-hot categorical distribution. @@ -41,6 +62,13 @@ class OneHotCategorical(D.Categorical): Args: logits (torch.Tensor): event log probabilities (unnormalized) probs (torch.Tensor): event probabilities + grad_method (ReparamGradientStrategy, optional): strategy to gather + reparameterized samples. + ``ReparamGradientStrategy.PassThrough`` will compute the sample gradients + by using the softmax valued log-probability as a proxy to the + samples gradients. + ``ReparamGradientStrategy.RelaxedOneHot`` will use + :class:`torch.distributions.RelaxedOneHot` to sample from the distribution. Examples: >>> torch.manual_seed(0) @@ -59,11 +87,14 @@ def __init__( self, logits: Optional[torch.Tensor] = None, probs: Optional[torch.Tensor] = None, + grad_method: ReparamGradientStrategy = ReparamGradientStrategy.PassThrough, **kwargs, ) -> None: logits = _treat_categorical_params(logits) probs = _treat_categorical_params(probs) + self.grad_method = grad_method super().__init__(probs=probs, logits=logits, **kwargs) + self.num_samples = self._param.shape[-1] def log_prob(self, value: torch.Tensor) -> torch.Tensor: return super().log_prob(value.argmax(dim=-1)) @@ -75,14 +106,11 @@ def mode(self) -> torch.Tensor: else: return (self.probs == self.probs.max(-1, True)[0]).to(torch.long) + @_one_hot_wrapper(D.Categorical) def sample( self, sample_shape: Optional[Union[torch.Size, Sequence]] = None ) -> torch.Tensor: - if sample_shape is None: - sample_shape = torch.Size([]) - out = super().sample(sample_shape=sample_shape) - out = torch.nn.functional.one_hot(out, self.logits.shape[-1]).to(torch.long) - return out + ... def rsample(self, sample_shape: Union[torch.Size, Sequence] = None) -> torch.Tensor: if sample_shape is None: @@ -93,12 +121,25 @@ def rsample(self, sample_shape: Union[torch.Size, Sequence] = None) -> torch.Ten else: logits = None probs = self.probs - d = D.relaxed_categorical.RelaxedOneHotCategorical( - 1.0, probs=probs, logits=logits - ) - out = d.rsample(sample_shape) - out.data.copy_((out == out.max(-1)[0].unsqueeze(-1)).to(out.dtype)) - return out + if self.grad_method == ReparamGradientStrategy.RelaxedOneHot: + d = D.relaxed_categorical.RelaxedOneHotCategorical( + 1.0, probs=probs, logits=logits + ) + out = d.rsample(sample_shape) + out.data.copy_((out == out.max(-1)[0].unsqueeze(-1)).to(out.dtype)) + return out + elif self.grad_method == ReparamGradientStrategy.PassThrough: + if logits is not None: + probs = self.probs + else: + probs = torch.softmax(self.logits, dim=-1) + out = self.sample(sample_shape) + out = out + probs - probs.detach() + return out + else: + raise ValueError( + f"Unknown reparametrization strategy {self.reparam_strategy}." + ) class MaskedCategorical(D.Categorical): @@ -112,6 +153,8 @@ class MaskedCategorical(D.Categorical): probs (torch.Tensor): event probabilities. If provided, the probabilities corresponding to to masked items will be zeroed and the probability re-normalized along its last dimension. + + Keyword Args: mask (torch.Tensor): A boolean mask of the same shape as ``logits``/``probs`` where ``False`` entries are the ones to be masked. Alternatively, if ``sparse_mask`` is True, it represents the list of valid indices @@ -149,6 +192,7 @@ def __init__( self, logits: Optional[torch.Tensor] = None, probs: Optional[torch.Tensor] = None, + *, mask: torch.Tensor = None, indices: torch.Tensor = None, neg_inf: float = float("-inf"), @@ -174,6 +218,7 @@ def __init__( probs[~mask] = 0 probs = probs / probs.sum(-1, keepdim=True) logits = probs.log() + num_samples = logits.shape[-1] logits = self._mask_logits( logits, mask, @@ -186,6 +231,7 @@ def __init__( self._sparse_mask = sparse_mask self._padding_value = padding_value super().__init__(logits=logits) + self.num_samples = num_samples def sample( self, sample_shape: Optional[Union[torch.Size, Sequence[int]]] = None @@ -245,3 +291,153 @@ def _mask_logits( if padding_value is not None: logits.masked_fill_(padding_mask, neg_inf) return logits + + +class MaskedOneHotCategorical(MaskedCategorical): + """MaskedCategorical distribution. + + Reference: + https://www.tensorflow.org/agents/api_docs/python/tf_agents/distributions/masked/MaskedCategorical + + Args: + logits (torch.Tensor): event log probabilities (unnormalized) + probs (torch.Tensor): event probabilities. If provided, the probabilities + corresponding to to masked items will be zeroed and the probability + re-normalized along its last dimension. + + Keyword Args: + mask (torch.Tensor): A boolean mask of the same shape as ``logits``/``probs`` + where ``False`` entries are the ones to be masked. Alternatively, + if ``sparse_mask`` is True, it represents the list of valid indices + in the distribution. Exclusive with ``indices``. + indices (torch.Tensor): A dense index tensor representing which actions + must be taken into account. Exclusive with ``mask``. + neg_inf (float, optional): The log-probability value allocated to + invalid (out-of-mask) indices. Defaults to -inf. + padding_value: The padding value in the mask tensor. When + sparse_mask == True, the padding_value will be ignored. + grad_method (ReparamGradientStrategy, optional): strategy to gather + reparameterized samples. + ``ReparamGradientStrategy.PassThrough`` will compute the sample gradients + by using the softmax valued log-probability as a proxy to the + samples gradients. + ``ReparamGradientStrategy.RelaxedOneHot`` will use + :class:`torch.distributions.RelaxedOneHot` to sample from the distribution. + + >>> torch.manual_seed(0) + >>> logits = torch.randn(4) / 100 # almost equal probabilities + >>> mask = torch.tensor([True, False, True, True]) + >>> dist = MaskedCategorical(logits=logits, mask=mask) + >>> sample = dist.sample((10,)) + >>> print(sample) # no `1` in the sample + tensor([2, 3, 0, 2, 2, 0, 2, 0, 2, 2]) + >>> print(dist.log_prob(sample)) + tensor([-1.1203, -1.0928, -1.0831, -1.1203, -1.1203, -1.0831, -1.1203, -1.0831, + -1.1203, -1.1203]) + >>> print(dist.log_prob(torch.ones_like(sample))) + tensor([-inf, -inf, -inf, -inf, -inf, -inf, -inf, -inf, -inf, -inf]) + >>> # with probabilities + >>> prob = torch.ones(10) + >>> prob = prob / prob.sum() + >>> mask = torch.tensor([False] + 9 * [True]) # first outcome is masked + >>> dist = MaskedCategorical(probs=prob, mask=mask) + >>> print(dist.log_prob(torch.arange(10))) + tensor([ -inf, -2.1972, -2.1972, -2.1972, -2.1972, -2.1972, -2.1972, -2.1972, + -2.1972, -2.1972]) + """ + + def __init__( + self, + logits: Optional[torch.Tensor] = None, + probs: Optional[torch.Tensor] = None, + mask: torch.Tensor = None, + indices: torch.Tensor = None, + neg_inf: float = float("-inf"), + padding_value: Optional[int] = None, + grad_method: ReparamGradientStrategy = ReparamGradientStrategy.PassThrough, + ) -> None: + self.grad_method = grad_method + super().__init__( + logits=logits, + probs=probs, + mask=mask, + indices=indices, + neg_inf=neg_inf, + padding_value=padding_value, + ) + + @_one_hot_wrapper(MaskedCategorical) + def sample( + self, sample_shape: Optional[Union[torch.Size, Sequence[int]]] = None + ) -> torch.Tensor: + ... + + def log_prob(self, value: torch.Tensor) -> torch.Tensor: + return super().log_prob(value.argmax(dim=-1)) + + def rsample(self, sample_shape: Union[torch.Size, Sequence] = None) -> torch.Tensor: + if sample_shape is None: + sample_shape = torch.Size([]) + if hasattr(self, "logits") and self.logits is not None: + logits = self.logits + probs = None + else: + logits = None + probs = self.probs + if self.grad_method == ReparamGradientStrategy.RelaxedOneHot: + if self._sparse_mask: + if probs is not None: + probs_extended = torch.full( + (*probs.shape[:-1], self.num_samples), + 0, + device=probs.device, + dtype=probs.dtype, + ) + probs_extended = torch.scatter( + probs_extended, -1, self._mask, probs + ) + logits_extended = None + else: + probs_extended = torch.full( + (*logits.shape[:-1], self.num_samples), + self.neg_inf, + device=logits.device, + dtype=logits.dtype, + ) + logits_extended = torch.scatter( + probs_extended, -1, self._mask, logits + ) + probs_extended = None + else: + probs_extended = probs + logits_extended = logits + + d = D.relaxed_categorical.RelaxedOneHotCategorical( + 1.0, probs=probs_extended, logits=logits_extended + ) + out = d.rsample(sample_shape) + out.data.copy_((out == out.max(-1)[0].unsqueeze(-1)).to(out.dtype)) + return out + elif self.grad_method == ReparamGradientStrategy.PassThrough: + if logits is not None: + probs = self.probs + else: + probs = torch.softmax(self.logits, dim=-1) + if self._sparse_mask: + probs_extended = torch.full( + (*probs.shape[:-1], self.num_samples), + 0, + device=probs.device, + dtype=probs.dtype, + ) + probs_extended = torch.scatter(probs_extended, -1, self._mask, probs) + else: + probs_extended = probs + + out = self.sample(sample_shape) + out = out + probs_extended - probs_extended.detach() + return out + else: + raise ValueError( + f"Unknown reparametrization strategy {self.reparam_strategy}." + ) From 4709216d1bb3b8ab41dfeda8a75b7619b7083862 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Tue, 5 Sep 2023 15:59:59 +0100 Subject: [PATCH 059/148] [Minor] Missing commit from #1488 (#1490) --- docs/source/reference/modules.rst | 1 + test/test_transforms.py | 8 ++++---- torchrl/envs/transforms/transforms.py | 18 +++++++++++----- torchrl/modules/distributions/discrete.py | 25 +++++++++++++++++------ 4 files changed, 37 insertions(+), 15 deletions(-) diff --git a/docs/source/reference/modules.rst b/docs/source/reference/modules.rst index 3425fdf442d..704c8e6276a 100644 --- a/docs/source/reference/modules.rst +++ b/docs/source/reference/modules.rst @@ -401,6 +401,7 @@ Some distributions are typically used in RL scripts. TanhDelta OneHotCategorical MaskedCategorical + MaskedOneHotCategorical Utils ----- diff --git a/test/test_transforms.py b/test/test_transforms.py index de9a4fa29d0..b22ca597bc1 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -8198,7 +8198,7 @@ def __init__(self, *args, **kwargs): ) self.observation_spec = CompositeSpec( obs=UnboundedContinuousTensorSpec(3), - mask=BinaryDiscreteTensorSpec(4, dtype=torch.bool), + action_mask=BinaryDiscreteTensorSpec(4, dtype=torch.bool), ) self.reward_spec = UnboundedContinuousTensorSpec(1) @@ -8209,11 +8209,11 @@ def _reset(self, tensordict): def _step(self, data): td = self.observation_spec.rand() - mask = data.get("mask") + mask = data.get("action_mask") action = data.get("action") mask = mask.scatter(-1, action.unsqueeze(-1), 0) - td.set("mask", mask) + td.set("action_mask", mask) td.set("reward", self.reward_spec.rand()) td.set("done", ~(mask.any().view(1))) return td @@ -8270,7 +8270,7 @@ def test_transform_env(self): break else: raise RuntimeError - assert not td.get("mask").any() + assert not td.get("action_mask").any() def test_transform_model(self): t = ActionMask() diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index a0316e44c2d..075c93c7a74 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -4811,6 +4811,12 @@ class ActionMask(Transform): .. note:: This transform will fail when used without an environment. + Args: + action_key (NestedKey, optional): the key where the action tensor can be found. + Defaults to ``"action"``. + mask_key (NestedKey, optional): the key where the action mask can be found. + Defaults to ``"action_mask"``. + Examples: >>> import torch >>> from torchrl.data.tensor_specs import DiscreteTensorSpec, BinaryDiscreteTensorSpec, UnboundedContinuousTensorSpec, CompositeSpec @@ -4820,7 +4826,7 @@ class ActionMask(Transform): ... def __init__(self, *args, **kwargs): ... super().__init__(*args, **kwargs) ... self.action_spec = DiscreteTensorSpec(4) - ... self.state_spec = CompositeSpec(mask=BinaryDiscreteTensorSpec(4, dtype=torch.bool)) + ... self.state_spec = CompositeSpec(action_mask=BinaryDiscreteTensorSpec(4, dtype=torch.bool)) ... self.observation_spec = CompositeSpec(obs=UnboundedContinuousTensorSpec(3)) ... self.reward_spec = UnboundedContinuousTensorSpec(1) ... @@ -4831,11 +4837,11 @@ class ActionMask(Transform): ... ... def _step(self, data): ... td = self.observation_spec.rand() - ... mask = data.get("mask") + ... mask = data.get("action_mask") ... action = data.get("action") ... mask = mask.scatter(-1, action.unsqueeze(-1), 0) ... - ... td.set("mask", mask) + ... td.set("action_mask", mask) ... td.set("reward", self.reward_spec.rand()) ... td.set("done", ~mask.any().view(1)) ... return td @@ -4849,7 +4855,7 @@ class ActionMask(Transform): >>> r = env.rollout(10) >>> env = TransformedEnv(base_env, ActionMask()) >>> r = env.rollout(10) - >>> r["mask"] + >>> r["action_mask"] tensor([[ True, True, True, True], [ True, True, False, True], [ True, True, False, False], @@ -4865,7 +4871,9 @@ class ActionMask(Transform): ) SPEC_TYPE_ERROR = "The action spec must be one of {}. Got {} instead." - def __init__(self, action_key: NestedKey = "action", mask_key: NestedKey = "mask"): + def __init__( + self, action_key: NestedKey = "action", mask_key: NestedKey = "action_mask" + ): if not isinstance(action_key, (tuple, str)): raise ValueError( f"The action key must be a nested key. Got {type(action_key)} instead." diff --git a/torchrl/modules/distributions/discrete.py b/torchrl/modules/distributions/discrete.py index 642addf4bf8..bb98b1412a8 100644 --- a/torchrl/modules/distributions/discrete.py +++ b/torchrl/modules/distributions/discrete.py @@ -314,7 +314,7 @@ class MaskedOneHotCategorical(MaskedCategorical): must be taken into account. Exclusive with ``mask``. neg_inf (float, optional): The log-probability value allocated to invalid (out-of-mask) indices. Defaults to -inf. - padding_value: The padding value in the mask tensor. When + padding_value: The padding value in the then mask tensor when sparse_mask == True, the padding_value will be ignored. grad_method (ReparamGradientStrategy, optional): strategy to gather reparameterized samples. @@ -327,21 +327,34 @@ class MaskedOneHotCategorical(MaskedCategorical): >>> torch.manual_seed(0) >>> logits = torch.randn(4) / 100 # almost equal probabilities >>> mask = torch.tensor([True, False, True, True]) - >>> dist = MaskedCategorical(logits=logits, mask=mask) + >>> dist = MaskedOneHotCategorical(logits=logits, mask=mask) >>> sample = dist.sample((10,)) >>> print(sample) # no `1` in the sample - tensor([2, 3, 0, 2, 2, 0, 2, 0, 2, 2]) + tensor([[0, 0, 1, 0], + [0, 0, 0, 1], + [1, 0, 0, 0], + [0, 0, 1, 0], + [0, 0, 1, 0], + [1, 0, 0, 0], + [0, 0, 1, 0], + [1, 0, 0, 0], + [0, 0, 1, 0], + [0, 0, 1, 0]]) >>> print(dist.log_prob(sample)) tensor([-1.1203, -1.0928, -1.0831, -1.1203, -1.1203, -1.0831, -1.1203, -1.0831, -1.1203, -1.1203]) - >>> print(dist.log_prob(torch.ones_like(sample))) + >>> sample_non_valid = torch.zeros_like(sample) + >>> sample_non_valid[..., 1] = 1 + >>> print(dist.log_prob(sample_non_valid)) tensor([-inf, -inf, -inf, -inf, -inf, -inf, -inf, -inf, -inf, -inf]) >>> # with probabilities >>> prob = torch.ones(10) >>> prob = prob / prob.sum() >>> mask = torch.tensor([False] + 9 * [True]) # first outcome is masked - >>> dist = MaskedCategorical(probs=prob, mask=mask) - >>> print(dist.log_prob(torch.arange(10))) + >>> dist = MaskedOneHotCategorical(probs=prob, mask=mask) + >>> s = torch.arange(10) + >>> s = torch.nn.functional.one_hot(s, 10) + >>> print(dist.log_prob(s)) tensor([ -inf, -2.1972, -2.1972, -2.1972, -2.1972, -2.1972, -2.1972, -2.1972, -2.1972, -2.1972]) """ From ca386507536a17f993e8348bf098e170a607c294 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Tue, 5 Sep 2023 17:53:35 +0100 Subject: [PATCH 060/148] [BugFix] Fix action mask test (#1492) --- test/test_transforms.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/test_transforms.py b/test/test_transforms.py index b22ca597bc1..b84133b0e42 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -8194,7 +8194,7 @@ def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.action_spec = DiscreteTensorSpec(4) self.state_spec = CompositeSpec( - mask=BinaryDiscreteTensorSpec(4, dtype=torch.bool) + action_mask=BinaryDiscreteTensorSpec(4, dtype=torch.bool) ) self.observation_spec = CompositeSpec( obs=UnboundedContinuousTensorSpec(3), From aa13a673b20598235ac4b7def923ab649a49aa7f Mon Sep 17 00:00:00 2001 From: Skander Moalla <37197319+skandermoalla@users.noreply.github.com> Date: Wed, 6 Sep 2023 11:59:06 +0200 Subject: [PATCH 061/148] [BugFix] Fix typo in CatFrames Transform error message. (#1491) --- torchrl/envs/transforms/transforms.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index 075c93c7a74..0372b680ab3 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -2074,7 +2074,7 @@ class CatFrames(ObservationTransform): inplace = False _CAT_DIM_ERR = ( - "dim must be > 0 to accomodate for tensordict of " + "dim must be < 0 to accomodate for tensordict of " "different batch-sizes (since negative dims are batch invariant)." ) ACCEPTED_PADDING = {"same", "zeros"} @@ -2092,7 +2092,7 @@ def __init__( in_keys = IMAGE_KEYS super().__init__(in_keys=in_keys, out_keys=out_keys) self.N = N - if dim > 0: + if dim >= 0: raise ValueError(self._CAT_DIM_ERR) self.dim = dim if padding not in self.ACCEPTED_PADDING: From 12ebcce7a6ef3f8342a69ede1b32ff68245ca2d9 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 6 Sep 2023 11:45:52 +0100 Subject: [PATCH 062/148] [Setup] Update setup.py python versions (#1496) --- README.md | 2 +- setup.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 2e89598f5e6..d90b3ef6df9 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ [![Benchmarks](https://img.shields.io/badge/Benchmarks-blue.svg)](https://pytorch.github.io/rl/dev/bench/) [![codecov](https://codecov.io/gh/pytorch/rl/branch/main/graph/badge.svg?token=HcpK1ILV6r)](https://codecov.io/gh/pytorch/rl) [![Twitter Follow](https://img.shields.io/twitter/follow/torchrl1?style=social)](https://twitter.com/torchrl1) -[![Python 3.8](https://img.shields.io/badge/python-3.8%20%7C%203.9%20%7C%203.10%20%7C%203.11-blue.svg)](https://www.python.org/downloads/) +[![Python version](https://img.shields.io/pypi/pyversions/torchrl.svg)](https://www.python.org/downloads/) [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/pytorch/rl/blob/main/LICENSE) pypi version pypi nightly version diff --git a/setup.py b/setup.py index 3723c1b1981..c7e3a8520eb 100644 --- a/setup.py +++ b/setup.py @@ -239,10 +239,10 @@ def _main(argv): }, zip_safe=False, classifiers=[ - "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Development Status :: 4 - Beta", From 560885246acbb651595b3521d88b6b3296cacaf8 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 6 Sep 2023 13:25:28 +0100 Subject: [PATCH 063/148] [Minor] Capture error in CatFrame edit (#1498) --- test/test_transforms.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/test_transforms.py b/test/test_transforms.py index b84133b0e42..088b667e847 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -618,7 +618,7 @@ def test_transform_no_env(self, device, d, batch_size, dim, N): td = TensorDict(dict(zip(keys, key_tensors)), batch_size, device=device) if dim > 0: with pytest.raises( - ValueError, match="dim must be > 0 to accomodate for tensordict" + ValueError, match="dim must be < 0 to accomodate for tensordict" ): cat_frames = CatFrames(N=N, in_keys=keys, dim=dim) return From d5ddd3d444f41a1198905f9470bd11c0170ab86b Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 6 Sep 2023 16:40:21 +0100 Subject: [PATCH 064/148] [Feature] RoboHive integration (#1119) --- .../linux_libs/scripts_gym/setup_env.sh | 2 - .../scripts_robohive/environment.yml | 28 ++ .../scripts_robohive/install_and_run_test.sh | 88 +++++ .../scripts_robohive/post_process.sh | 6 + .../scripts_robohive/run-clang-format.py | 356 ++++++++++++++++++ .../linux_libs/scripts_robohive/setup_env.sh | 82 ++++ .github/workflows/test-linux-robohive.yml | 30 ++ test/test_libs.py | 25 ++ test/test_specs.py | 95 ++--- torchrl/__init__.py | 8 + torchrl/data/tensor_specs.py | 24 +- torchrl/envs/common.py | 10 +- torchrl/envs/gym_like.py | 6 +- torchrl/envs/libs/robohive.py | 340 +++++++++++++++++ torchrl/envs/utils.py | 25 +- 15 files changed, 1039 insertions(+), 86 deletions(-) create mode 100644 .circleci/unittest/linux_libs/scripts_robohive/environment.yml create mode 100755 .circleci/unittest/linux_libs/scripts_robohive/install_and_run_test.sh create mode 100755 .circleci/unittest/linux_libs/scripts_robohive/post_process.sh create mode 100755 .circleci/unittest/linux_libs/scripts_robohive/run-clang-format.py create mode 100755 .circleci/unittest/linux_libs/scripts_robohive/setup_env.sh create mode 100644 .github/workflows/test-linux-robohive.yml create mode 100644 torchrl/envs/libs/robohive.py diff --git a/.circleci/unittest/linux_libs/scripts_gym/setup_env.sh b/.circleci/unittest/linux_libs/scripts_gym/setup_env.sh index a6cf44d8d02..ac6da363945 100755 --- a/.circleci/unittest/linux_libs/scripts_gym/setup_env.sh +++ b/.circleci/unittest/linux_libs/scripts_gym/setup_env.sh @@ -82,8 +82,6 @@ conda env config vars set \ LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/pytorch/rl/mujoco-py/mujoco_py/binaries/linux/mujoco210/bin # LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/circleci/project/mujoco-py/mujoco_py/binaries/linux/mujoco210/bin -# LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/src/nvidia-470.63.01 \ - # make env variables apparent conda deactivate && conda activate "${env_dir}" diff --git a/.circleci/unittest/linux_libs/scripts_robohive/environment.yml b/.circleci/unittest/linux_libs/scripts_robohive/environment.yml new file mode 100644 index 00000000000..705b8522c92 --- /dev/null +++ b/.circleci/unittest/linux_libs/scripts_robohive/environment.yml @@ -0,0 +1,28 @@ +channels: + - pytorch + - defaults +dependencies: + - pip + - protobuf + - pip: + # Initial version is required to install Atari ROMS in setup_env.sh + - gym==0.13 + - hypothesis + - future + - cloudpickle + - pygame + - moviepy + - tqdm + - pytest + - pytest-cov + - pytest-mock + - pytest-instafail + - pytest-rerunfailures + - pytest-error-for-skips + - expecttest + - pyyaml + - scipy + - hydra-core + - patchelf + - mujoco==2.3.3 + - dm_control==1.0.11 diff --git a/.circleci/unittest/linux_libs/scripts_robohive/install_and_run_test.sh b/.circleci/unittest/linux_libs/scripts_robohive/install_and_run_test.sh new file mode 100755 index 00000000000..55be1340bab --- /dev/null +++ b/.circleci/unittest/linux_libs/scripts_robohive/install_and_run_test.sh @@ -0,0 +1,88 @@ +#!/usr/bin/env bash + +unset PYTORCH_VERSION +# For unittest, nightly PyTorch is used as the following section, +# so no need to set PYTORCH_VERSION. +# In fact, keeping PYTORCH_VERSION forces us to hardcode PyTorch version in config. +apt-get update && apt-get install -y git wget libglew-dev libx11-dev x11proto-dev g++ gcc libosmesa6-dev + +set -e +set -v + +eval "$(./conda/bin/conda shell.bash hook)" +conda activate ./env + +#apt-get update -y && apt-get install git wget gcc g++ -y + +if [ "${CU_VERSION:-}" == cpu ] ; then + cudatoolkit="cpuonly" + version="cpu" +else + if [[ ${#CU_VERSION} -eq 4 ]]; then + CUDA_VERSION="${CU_VERSION:2:1}.${CU_VERSION:3:1}" + elif [[ ${#CU_VERSION} -eq 5 ]]; then + CUDA_VERSION="${CU_VERSION:2:2}.${CU_VERSION:4:1}" + fi + echo "Using CUDA $CUDA_VERSION as determined by CU_VERSION ($CU_VERSION)" + version="$(python -c "print('.'.join(\"${CUDA_VERSION}\".split('.')[:2]))")" + cudatoolkit="cudatoolkit=${version}" +fi + +case "$(uname -s)" in + Darwin*) os=MacOSX;; + *) os=Linux +esac + +# submodules +git submodule sync && git submodule update --init --recursive + +printf "Installing PyTorch with %s\n" "${CU_VERSION}" +if [ "${CU_VERSION:-}" == cpu ] ; then + # conda install -y pytorch torchvision cpuonly -c pytorch-nightly + # use pip to install pytorch as conda can frequently pick older release +# conda install -y pytorch cpuonly -c pytorch-nightly + pip3 install --pre torch --extra-index-url https://download.pytorch.org/whl/nightly/cpu --force-reinstall +else + pip3 install --pre torch --extra-index-url https://download.pytorch.org/whl/nightly/cu116 --force-reinstall +fi + +# install tensordict +pip install git+https://github.com/pytorch-labs/tensordict.git + +# smoke test +python -c "import tensordict" + +printf "* Installing torchrl\n" +python setup.py develop +python -c "import torchrl" + +# Extracted from run_test.sh to run once. + +export PYTORCH_TEST_WITH_SLOW='1' +python -m torch.utils.collect_env +# Avoid error: "fatal: unsafe repository" +git config --global --add safe.directory '*' + +root_dir="$(git rev-parse --show-toplevel)" +env_dir="${root_dir}/env" +lib_dir="${env_dir}/lib" + +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$lib_dir +export MKL_THREADING_LAYER=GNU + +python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test.py -v --durations 20 + +# let's make sure we have a GPU at our disposal +python -c """ +import torch +devcount = torch.cuda.device_count() +assert devcount +print('device count', devcount) +""" + +echo $MUJOCO_GL +echo $sim_backend + +sim_backend=MUJOCO MUJOCO_GL=egl python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 20 -k "robohive" --error-for-skips +coverage combine +coverage xml -i diff --git a/.circleci/unittest/linux_libs/scripts_robohive/post_process.sh b/.circleci/unittest/linux_libs/scripts_robohive/post_process.sh new file mode 100755 index 00000000000..e97bf2a7b1b --- /dev/null +++ b/.circleci/unittest/linux_libs/scripts_robohive/post_process.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +set -e + +eval "$(./conda/bin/conda shell.bash hook)" +conda activate ./env diff --git a/.circleci/unittest/linux_libs/scripts_robohive/run-clang-format.py b/.circleci/unittest/linux_libs/scripts_robohive/run-clang-format.py new file mode 100755 index 00000000000..5783a885d86 --- /dev/null +++ b/.circleci/unittest/linux_libs/scripts_robohive/run-clang-format.py @@ -0,0 +1,356 @@ +#!/usr/bin/env python +""" +MIT License + +Copyright (c) 2017 Guillaume Papin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +A wrapper script around clang-format, suitable for linting multiple files +and to use for continuous integration. + +This is an alternative API for the clang-format command line. +It runs over multiple files and directories in parallel. +A diff output is produced and a sensible exit code is returned. + +""" + +import argparse +import difflib +import fnmatch +import multiprocessing +import os +import signal +import subprocess +import sys +import traceback +from functools import partial + +try: + from subprocess import DEVNULL # py3k +except ImportError: + DEVNULL = open(os.devnull, "wb") + + +DEFAULT_EXTENSIONS = "c,h,C,H,cpp,hpp,cc,hh,c++,h++,cxx,hxx,cu" + + +class ExitStatus: + SUCCESS = 0 + DIFF = 1 + TROUBLE = 2 + + +def list_files(files, recursive=False, extensions=None, exclude=None): + if extensions is None: + extensions = [] + if exclude is None: + exclude = [] + + out = [] + for file in files: + if recursive and os.path.isdir(file): + for dirpath, dnames, fnames in os.walk(file): + fpaths = [os.path.join(dirpath, fname) for fname in fnames] + for pattern in exclude: + # os.walk() supports trimming down the dnames list + # by modifying it in-place, + # to avoid unnecessary directory listings. + dnames[:] = [ + x + for x in dnames + if not fnmatch.fnmatch(os.path.join(dirpath, x), pattern) + ] + fpaths = [x for x in fpaths if not fnmatch.fnmatch(x, pattern)] + for f in fpaths: + ext = os.path.splitext(f)[1][1:] + if ext in extensions: + out.append(f) + else: + out.append(file) + return out + + +def make_diff(file, original, reformatted): + return list( + difflib.unified_diff( + original, + reformatted, + fromfile=f"{file}\t(original)", + tofile=f"{file}\t(reformatted)", + n=3, + ) + ) + + +class DiffError(Exception): + def __init__(self, message, errs=None): + super().__init__(message) + self.errs = errs or [] + + +class UnexpectedError(Exception): + def __init__(self, message, exc=None): + super().__init__(message) + self.formatted_traceback = traceback.format_exc() + self.exc = exc + + +def run_clang_format_diff_wrapper(args, file): + try: + ret = run_clang_format_diff(args, file) + return ret + except DiffError: + raise + except Exception as e: + raise UnexpectedError(f"{file}: {e.__class__.__name__}: {e}", e) + + +def run_clang_format_diff(args, file): + try: + with open(file, encoding="utf-8") as f: + original = f.readlines() + except OSError as exc: + raise DiffError(str(exc)) + invocation = [args.clang_format_executable, file] + + # Use of utf-8 to decode the process output. + # + # Hopefully, this is the correct thing to do. + # + # It's done due to the following assumptions (which may be incorrect): + # - clang-format will returns the bytes read from the files as-is, + # without conversion, and it is already assumed that the files use utf-8. + # - if the diagnostics were internationalized, they would use utf-8: + # > Adding Translations to Clang + # > + # > Not possible yet! + # > Diagnostic strings should be written in UTF-8, + # > the client can translate to the relevant code page if needed. + # > Each translation completely replaces the format string + # > for the diagnostic. + # > -- http://clang.llvm.org/docs/InternalsManual.html#internals-diag-translation + + try: + proc = subprocess.Popen( + invocation, + stdout=subprocess.PIPE, + stderr=subprocess.PIPE, + universal_newlines=True, + encoding="utf-8", + ) + except OSError as exc: + raise DiffError( + f"Command '{subprocess.list2cmdline(invocation)}' failed to start: {exc}" + ) + proc_stdout = proc.stdout + proc_stderr = proc.stderr + + # hopefully the stderr pipe won't get full and block the process + outs = list(proc_stdout.readlines()) + errs = list(proc_stderr.readlines()) + proc.wait() + if proc.returncode: + raise DiffError( + "Command '{}' returned non-zero exit status {}".format( + subprocess.list2cmdline(invocation), proc.returncode + ), + errs, + ) + return make_diff(file, original, outs), errs + + +def bold_red(s): + return "\x1b[1m\x1b[31m" + s + "\x1b[0m" + + +def colorize(diff_lines): + def bold(s): + return "\x1b[1m" + s + "\x1b[0m" + + def cyan(s): + return "\x1b[36m" + s + "\x1b[0m" + + def green(s): + return "\x1b[32m" + s + "\x1b[0m" + + def red(s): + return "\x1b[31m" + s + "\x1b[0m" + + for line in diff_lines: + if line[:4] in ["--- ", "+++ "]: + yield bold(line) + elif line.startswith("@@ "): + yield cyan(line) + elif line.startswith("+"): + yield green(line) + elif line.startswith("-"): + yield red(line) + else: + yield line + + +def print_diff(diff_lines, use_color): + if use_color: + diff_lines = colorize(diff_lines) + sys.stdout.writelines(diff_lines) + + +def print_trouble(prog, message, use_colors): + error_text = "error:" + if use_colors: + error_text = bold_red(error_text) + print(f"{prog}: {error_text} {message}", file=sys.stderr) + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument( + "--clang-format-executable", + metavar="EXECUTABLE", + help="path to the clang-format executable", + default="clang-format", + ) + parser.add_argument( + "--extensions", + help=f"comma separated list of file extensions (default: {DEFAULT_EXTENSIONS})", + default=DEFAULT_EXTENSIONS, + ) + parser.add_argument( + "-r", + "--recursive", + action="store_true", + help="run recursively over directories", + ) + parser.add_argument("files", metavar="file", nargs="+") + parser.add_argument("-q", "--quiet", action="store_true") + parser.add_argument( + "-j", + metavar="N", + type=int, + default=0, + help="run N clang-format jobs in parallel (default number of cpus + 1)", + ) + parser.add_argument( + "--color", + default="auto", + choices=["auto", "always", "never"], + help="show colored diff (default: auto)", + ) + parser.add_argument( + "-e", + "--exclude", + metavar="PATTERN", + action="append", + default=[], + help="exclude paths matching the given glob-like pattern(s) from recursive search", + ) + + args = parser.parse_args() + + # use default signal handling, like diff return SIGINT value on ^C + # https://bugs.python.org/issue14229#msg156446 + signal.signal(signal.SIGINT, signal.SIG_DFL) + try: + signal.SIGPIPE + except AttributeError: + # compatibility, SIGPIPE does not exist on Windows + pass + else: + signal.signal(signal.SIGPIPE, signal.SIG_DFL) + + colored_stdout = False + colored_stderr = False + if args.color == "always": + colored_stdout = True + colored_stderr = True + elif args.color == "auto": + colored_stdout = sys.stdout.isatty() + colored_stderr = sys.stderr.isatty() + + version_invocation = [args.clang_format_executable, "--version"] + try: + subprocess.check_call(version_invocation, stdout=DEVNULL) + except subprocess.CalledProcessError as e: + print_trouble(parser.prog, str(e), use_colors=colored_stderr) + return ExitStatus.TROUBLE + except OSError as e: + print_trouble( + parser.prog, + f"Command '{subprocess.list2cmdline(version_invocation)}' failed to start: {e}", + use_colors=colored_stderr, + ) + return ExitStatus.TROUBLE + + retcode = ExitStatus.SUCCESS + files = list_files( + args.files, + recursive=args.recursive, + exclude=args.exclude, + extensions=args.extensions.split(","), + ) + + if not files: + return + + njobs = args.j + if njobs == 0: + njobs = multiprocessing.cpu_count() + 1 + njobs = min(len(files), njobs) + + if njobs == 1: + # execute directly instead of in a pool, + # less overhead, simpler stacktraces + it = (run_clang_format_diff_wrapper(args, file) for file in files) + pool = None + else: + pool = multiprocessing.Pool(njobs) + it = pool.imap_unordered(partial(run_clang_format_diff_wrapper, args), files) + while True: + try: + outs, errs = next(it) + except StopIteration: + break + except DiffError as e: + print_trouble(parser.prog, str(e), use_colors=colored_stderr) + retcode = ExitStatus.TROUBLE + sys.stderr.writelines(e.errs) + except UnexpectedError as e: + print_trouble(parser.prog, str(e), use_colors=colored_stderr) + sys.stderr.write(e.formatted_traceback) + retcode = ExitStatus.TROUBLE + # stop at the first unexpected error, + # something could be very wrong, + # don't process all files unnecessarily + if pool: + pool.terminate() + break + else: + sys.stderr.writelines(errs) + if outs == []: + continue + if not args.quiet: + print_diff(outs, use_color=colored_stdout) + if retcode == ExitStatus.SUCCESS: + retcode = ExitStatus.DIFF + return retcode + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/.circleci/unittest/linux_libs/scripts_robohive/setup_env.sh b/.circleci/unittest/linux_libs/scripts_robohive/setup_env.sh new file mode 100755 index 00000000000..bca4342209c --- /dev/null +++ b/.circleci/unittest/linux_libs/scripts_robohive/setup_env.sh @@ -0,0 +1,82 @@ +#!/usr/bin/env bash + +# This script is for setting up environment in which unit test is ran. +# To speed up the CI time, the resulting environment is cached. +# +# Do not install PyTorch and torchvision here, otherwise they also get cached. + +set -e + +this_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +# Avoid error: "fatal: unsafe repository" +apt-get update && apt-get install -y git wget gcc g++ + +git config --global --add safe.directory '*' +root_dir="$(git rev-parse --show-toplevel)" +conda_dir="${root_dir}/conda" +env_dir="${root_dir}/env" +lib_dir="${env_dir}/lib" + +cd "${root_dir}" + +case "$(uname -s)" in + Darwin*) os=MacOSX;; + *) os=Linux +esac + +# 1. Install conda at ./conda +if [ ! -d "${conda_dir}" ]; then + printf "* Installing conda\n" + wget -O miniconda.sh "http://repo.continuum.io/miniconda/Miniconda3-latest-${os}-x86_64.sh" + bash ./miniconda.sh -b -f -p "${conda_dir}" +fi +eval "$(${conda_dir}/bin/conda shell.bash hook)" + +# 2. Create test environment at ./env +printf "python: ${PYTHON_VERSION}\n" +if [ ! -d "${env_dir}" ]; then + printf "* Creating a test environment\n" + conda create --prefix "${env_dir}" -y python="$PYTHON_VERSION" +fi +conda activate "${env_dir}" + +#git clone https://github.com/vmoens/mujoco-py.git +#cd mujoco-py +#git checkout aws_fix2 +#mkdir -p mujoco_py/binaries/linux \ +# && wget https://mujoco.org/download/mujoco210-linux-x86_64.tar.gz -O mujoco.tar.gz \ +# && tar -xf mujoco.tar.gz -C mujoco_py/binaries/linux \ +# && rm mujoco.tar.gz +#wget https://www.roboti.us/file/mjkey.txt +#cp mjkey.txt mujoco_py/binaries/ +#pip install -e . +#cd .. + +#cd $this_dir + +# 3. Install Conda dependencies +printf "* Installing dependencies (except PyTorch)\n" +echo " - python=${PYTHON_VERSION}" >> "${this_dir}/environment.yml" +cat "${this_dir}/environment.yml" + +export MUJOCO_GL=egl +conda env config vars set \ + MUJOCO_GL=egl \ + SDL_VIDEODRIVER=dummy \ + DISPLAY=unix:0.0 \ + PYOPENGL_PLATFORM=egl \ + NVIDIA_PATH=/usr/src/nvidia-470.63.01 \ + sim_backend=MUJOCO + +# make env variables apparent +conda deactivate && conda activate "${env_dir}" + +pip install pip --upgrade + +conda env update --file "${this_dir}/environment.yml" --prune +#conda install -c conda-forge fltk -y + +#pip install git+https://github.com/vmoens/mj_envs@patch-2 +pip install git+https://github.com/vikashplus/robohive@dev + +#pip uninstall free-mujoco-py -y diff --git a/.github/workflows/test-linux-robohive.yml b/.github/workflows/test-linux-robohive.yml new file mode 100644 index 00000000000..55f33504e09 --- /dev/null +++ b/.github/workflows/test-linux-robohive.yml @@ -0,0 +1,30 @@ +name: Robohive Tests on Linux + +on: + pull_request: + push: + branches: + - nightly + - main + - release/* + workflow_dispatch: + +jobs: + unittests: + uses: pytorch/test-infra/.github/workflows/linux_job.yml@main + with: + repository: pytorch/rl + runner: "linux.g5.4xlarge.nvidia.gpu" + docker-image: "nvidia/cudagl:11.4.0-base" + timeout: 120 + script: | + set -euo pipefail + export PYTHON_VERSION="3.8" + export CU_VERSION="cu117" + export TAR_OPTIONS="--no-same-owner" + export UPLOAD_CHANNEL="nightly" + export TF_CPP_MIN_LOG_LEVEL=0 + + bash .circleci/unittest/linux_libs/scripts_robohive/setup_env.sh + bash .circleci/unittest/linux_libs/scripts_robohive/install_and_run_test.sh + bash .circleci/unittest/linux_libs/scripts_robohive/post_process.sh diff --git a/test/test_libs.py b/test/test_libs.py index cce2d3f75ab..2a44e5a70bc 100644 --- a/test/test_libs.py +++ b/test/test_libs.py @@ -62,6 +62,7 @@ from torchrl.envs.libs.habitat import _has_habitat, HabitatEnv from torchrl.envs.libs.jumanji import _has_jumanji, JumanjiEnv from torchrl.envs.libs.openml import OpenMLEnv +from torchrl.envs.libs.robohive import RoboHiveEnv from torchrl.envs.libs.vmas import _has_vmas, VmasEnv, VmasWrapper from torchrl.envs.utils import check_env_specs, ExplorationType from torchrl.envs.vec_env import _has_envpool, MultiThreadedEnvWrapper, SerialEnv @@ -1634,6 +1635,30 @@ def test_env(self, task, num_envs, device): # break +class TestRoboHive: + @pytest.mark.parametrize("envname", RoboHiveEnv.env_list) + @pytest.mark.parametrize("from_pixels", [True, False]) + def test_robohive(self, envname, from_pixels): + if any(substr in envname for substr in ("_vr3m", "_vrrl", "_vflat", "_vvc1s")): + print("not testing envs with prebuilt rendering") + return + if "Adroit" in envname: + print("tcdm are broken") + return + try: + env = RoboHiveEnv(envname) + except AttributeError as err: + if "'MjData' object has no attribute 'get_body_xipos'" in str(err): + print("tcdm are broken") + return + else: + raise err + if from_pixels and len(RoboHiveEnv.get_available_cams(env_name=envname)) == 0: + print("no camera") + return + check_env_specs(env) + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/test/test_specs.py b/test/test_specs.py index b551420a6a3..76bd54b64c5 100644 --- a/test/test_specs.py +++ b/test/test_specs.py @@ -89,17 +89,7 @@ def test_unbounded(dtype): @pytest.mark.parametrize("dtype", [torch.float32, torch.float16, torch.float64, None]) -@pytest.mark.parametrize( - "shape", - [ - [], - torch.Size( - [ - 3, - ] - ), - ], -) +@pytest.mark.parametrize("shape", [[], torch.Size([3])]) def test_ndbounded(dtype, shape): torch.manual_seed(0) np.random.seed(0) @@ -122,7 +112,14 @@ def test_ndbounded(dtype, shape): assert ts.is_in(r) ts.encode(lb + torch.rand(10) * (ub - lb)) ts.encode((lb + torch.rand(10) * (ub - lb)).numpy()) - assert (ts.encode(ts.to_numpy(r)) == r).all() + + if not shape: + assert (ts.encode(ts.to_numpy(r)) == r).all() + else: + with pytest.raises(RuntimeError, match="Shape mismatch"): + ts.encode(ts.to_numpy(r)) + assert (ts.expand(*shape, *ts.shape).encode(ts.to_numpy(r)) == r).all() + with pytest.raises(AssertionError), set_global_var( torchrl.data.tensor_specs, "_CHECK_SPEC_ENCODE", True ): @@ -172,7 +169,12 @@ def test_ndunbounded(dtype, n, shape): ts.to_numpy(r) assert ts.is_in(r) assert r.dtype is dtype - assert (ts.encode(ts.to_numpy(r)) == r).all() + if not shape: + assert (ts.encode(ts.to_numpy(r)) == r).all() + else: + with pytest.raises(RuntimeError, match="Shape mismatch"): + ts.encode(ts.to_numpy(r)) + assert (ts.expand(*shape, *ts.shape).encode(ts.to_numpy(r)) == r).all() @pytest.mark.parametrize("n", range(3, 10)) @@ -202,8 +204,12 @@ def test_binary(n, shape): ) assert ts.is_in(r) assert ((r == 0) | (r == 1)).all() - assert (ts.encode(r.numpy()) == r).all() - assert (ts.encode(ts.to_numpy(r)) == r).all() + if not shape: + assert (ts.encode(ts.to_numpy(r)) == r).all() + else: + with pytest.raises(RuntimeError, match="Shape mismatch"): + ts.encode(ts.to_numpy(r)) + assert (ts.expand(*shape, *ts.shape).encode(ts.to_numpy(r)) == r).all() @pytest.mark.parametrize( @@ -247,7 +253,13 @@ def test_mult_onehot(shape, ns): assert _r.shape[-1] == _n categorical = ts.to_categorical(r) assert not ts.is_in(categorical) - assert (ts.encode(categorical) == r).all() + # assert (ts.encode(categorical) == r).all() + if not shape: + assert (ts.encode(categorical) == r).all() + else: + with pytest.raises(RuntimeError, match="is invalid for input of size"): + ts.encode(categorical) + assert (ts.expand(*shape, *ts.shape).encode(categorical) == r).all() @pytest.mark.parametrize( @@ -260,15 +272,7 @@ def test_mult_onehot(shape, ns): [[[2, 4], [3, 5]], [[4, 5], [2, 3]], [[2, 3], [3, 2]]], ], ) -@pytest.mark.parametrize( - "shape", - [ - None, - [], - torch.Size([3]), - torch.Size([4, 5]), - ], -) +@pytest.mark.parametrize("shape", [None, [], torch.Size([3]), torch.Size([4, 5])]) @pytest.mark.parametrize("dtype", [torch.float, torch.int, torch.long]) def test_multi_discrete(shape, ns, dtype): torch.manual_seed(0) @@ -305,27 +309,9 @@ def test_multi_discrete(shape, ns, dtype): assert not ts.is_in(projection) -@pytest.mark.parametrize( - "n", - [ - 1, - 4, - 7, - 99, - ], -) +@pytest.mark.parametrize("n", [1, 4, 7, 99]) @pytest.mark.parametrize("device", get_default_devices()) -@pytest.mark.parametrize( - "shape", - [ - None, - [], - [ - 1, - ], - [1, 2], - ], -) +@pytest.mark.parametrize("shape", [None, [], [1], [1, 2]]) def test_discrete_conversion(n, device, shape): categorical = DiscreteTensorSpec(n, device=device, shape=shape) shape_one_hot = [n] if not shape else [*shape, n] @@ -339,23 +325,8 @@ def test_discrete_conversion(n, device, shape): assert one_hot.is_in(categorical.to_one_hot(categorical.rand(shape))) -@pytest.mark.parametrize( - "ns", - [ - [ - 5, - ], - [5, 2, 3], - [4, 5, 1, 3], - ], -) -@pytest.mark.parametrize( - "shape", - [ - torch.Size([3]), - torch.Size([4, 5]), - ], -) +@pytest.mark.parametrize("ns", [[5], [5, 2, 3], [4, 5, 1, 3]]) +@pytest.mark.parametrize("shape", [torch.Size([3]), torch.Size([4, 5])]) @pytest.mark.parametrize("device", get_default_devices()) def test_multi_discrete_conversion(ns, shape, device): categorical = MultiDiscreteTensorSpec(ns, device=device) diff --git a/torchrl/__init__.py b/torchrl/__init__.py index 3197b4b95d3..5f928cd1ca6 100644 --- a/torchrl/__init__.py +++ b/torchrl/__init__.py @@ -5,8 +5,16 @@ import os from warnings import warn +import torch + from torch import multiprocessing as mp +if torch.cuda.device_count() > 1: + n = torch.cuda.device_count() - 1 + os.environ["MUJOCO_EGL_DEVICE_ID"] = str(1 + (os.getpid() % n)) + # if VERBOSE: + print("MUJOCO_EGL_DEVICE_ID: ", os.environ["MUJOCO_EGL_DEVICE_ID"]) + from ._extension import _init_extension diff --git a/torchrl/data/tensor_specs.py b/torchrl/data/tensor_specs.py index edf84561a23..c8bca60907e 100644 --- a/torchrl/data/tensor_specs.py +++ b/torchrl/data/tensor_specs.py @@ -529,18 +529,19 @@ def encode( val = torch.tensor(val, device=self.device, dtype=self.dtype) else: val = torch.as_tensor(val, dtype=self.dtype) - if val.shape[-len(self.shape) :] != self.shape: + if val != self.shape: + # if val.shape[-len(self.shape) :] != self.shape: # option 1: add a singleton dim at the end - if ( - val.shape[-len(self.shape) :] == self.shape[:-1] - and self.shape[-1] == 1 - ): + if val == self.shape and self.shape[-1] == 1: val = val.unsqueeze(-1) else: - raise RuntimeError( - f"Shape mismatch: the value has shape {val.shape} which " - f"is incompatible with the spec shape {self.shape}." - ) + try: + val = val.reshape(self.shape) + except Exception as err: + raise RuntimeError( + f"Shape mismatch: the value has shape {val.shape} which " + f"is incompatible with the spec shape {self.shape}." + ) from err if _CHECK_SPEC_ENCODE: self.assert_is_in(val) return val @@ -2011,7 +2012,7 @@ def encode( v, space, ignore_device=ignore_device ) ) - return torch.cat(x, -1) + return torch.cat(x, -1).reshape(self.shape) def _split(self, val: torch.Tensor) -> Optional[torch.Tensor]: split_sizes = [space.n for space in self.space] @@ -3178,7 +3179,8 @@ def is_in(self, val: Union[dict, TensorDictBase]) -> bool: for key, item in self._specs.items(): if item is None: continue - if not item.is_in(val.get(key)): + val_item = val.get(key) + if not item.is_in(val_item): return False return True diff --git a/torchrl/envs/common.py b/torchrl/envs/common.py index 08ed915ce80..3754eee5646 100644 --- a/torchrl/envs/common.py +++ b/torchrl/envs/common.py @@ -221,11 +221,13 @@ class EnvBase(nn.Module, metaclass=abc.ABCMeta): def __init__( self, - device: DEVICE_TYPING = "cpu", + device: DEVICE_TYPING = None, dtype: Optional[Union[torch.dtype, np.dtype]] = None, batch_size: Optional[torch.Size] = None, run_type_checks: bool = False, ): + if device is None: + device = torch.device("cpu") self.__dict__["_done_keys"] = None self.__dict__["_reward_keys"] = None self.__dict__["_action_keys"] = None @@ -1568,7 +1570,6 @@ def policy(td): if auto_cast_to_device: tensordict = tensordict.to(env_device, non_blocking=True) tensordict = self.step(tensordict) - tensordicts.append(tensordict.clone(False)) any_done = False @@ -1609,7 +1610,6 @@ def policy(td): callback(self, tensordict) batch_size = self.batch_size if tensordict is None else tensordict.batch_size - out_td = torch.stack(tensordicts, len(batch_size)) if return_contiguous: out_td = out_td.contiguous() @@ -1708,10 +1708,12 @@ def __init__( self, *args, dtype: Optional[np.dtype] = None, - device: DEVICE_TYPING = "cpu", + device: DEVICE_TYPING = None, batch_size: Optional[torch.Size] = None, **kwargs, ): + if device is None: + device = torch.device("cpu") super().__init__( device=device, dtype=dtype, diff --git a/torchrl/envs/gym_like.py b/torchrl/envs/gym_like.py index aa6a0485261..43eda6128bf 100644 --- a/torchrl/envs/gym_like.py +++ b/torchrl/envs/gym_like.py @@ -259,9 +259,9 @@ def _reset( self.info_dict_reader(info, tensordict_out) elif info is None and self.info_dict_reader is not None: # populate the reset with the items we have not seen from info - for key, item in self.observation_spec.items(): - if key not in tensordict_out.keys(): - source[key] = item.zero() + for key, item in self.observation_spec.items(True, True): + if key not in tensordict_out.keys(True, True): + tensordict_out[key] = item.zero() tensordict_out = tensordict_out.to(self.device, non_blocking=True) return tensordict_out diff --git a/torchrl/envs/libs/robohive.py b/torchrl/envs/libs/robohive.py new file mode 100644 index 00000000000..78eefa6d443 --- /dev/null +++ b/torchrl/envs/libs/robohive.py @@ -0,0 +1,340 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. +import importlib +import os +import warnings + +from copy import copy +from pathlib import Path + +import numpy as np +import torch +from tensordict import TensorDict +from tensordict.tensordict import make_tensordict +from torchrl._utils import implement_for +from torchrl.data import UnboundedContinuousTensorSpec +from torchrl.envs.libs.gym import ( + _gym_to_torchrl_spec_transform, + GymEnv, + set_gym_backend, +) +from torchrl.envs.utils import make_composite_from_td + +_has_robohive = importlib.util.find_spec("robohive") is not None + +if _has_robohive: + os.environ.setdefault("sim_backend", "MUJOCO") + import gym + + with set_gym_backend("gym"): + existing_envs = set(GymEnv.available_envs) + import robohive.envs.multi_task.substeps1 + from robohive.envs.env_variants import register_env_variant + + +class set_directory(object): + """Sets the cwd within the context. + + Args: + path (Path): The path to the cwd + """ + + def __init__(self, path: Path): + self.path = path + self.origin = Path().absolute() + + def __enter__(self): + os.chdir(self.path) + + def __exit__(self, *args, **kwargs): + os.chdir(self.origin) + + def __call__(self, fun): + def new_fun(*args, **kwargs): + with set_directory(Path(self.path)): + return fun(*args, **kwargs) + + return new_fun + + +class RoboHiveEnv(GymEnv): + """A wrapper for RoboHive gym environments. + + RoboHive is a collection of environments/tasks simulated with the MuJoCo physics engine exposed using the OpenAI-Gym API. + + Github: https://github.com/vikashplus/robohive/ + + RoboHive requires gym 0.13. + + Args: + env_name (str): the environment name to build. + read_info (bool, optional): whether the the info should be parsed. + Defaults to ``True``. + device (torch.device, optional): the device on which the input/output + are expected. Defaults to torch default device. + """ + + env_list = [] + if _has_robohive: + CURR_DIR = robohive.envs.multi_task.substeps1.CURR_DIR + else: + CURR_DIR = None + + @classmethod + def register_envs(cls): + + if not _has_robohive: + raise ImportError("Cannot load robohive.") + from robohive import robohive_env_suite as robohive_envs + from robohive.utils.prompt_utils import Prompt, set_prompt_verbosity + + set_prompt_verbosity(Prompt.WARN) + # with set_gym_backend("gym"): + # robo_envs = set(GymEnv.available_envs) - existing_envs + cls.env_list += robohive_envs + # cls.env_list = sorted(cls.env_list) + if not len(robohive_envs): + raise RuntimeError("did not load any environment.") + + @implement_for( + "gym", "0.14", None + ) # make sure gym 0.13 is installed, otherwise raise an exception + def _build_env(self, *args, **kwargs): + raise NotImplementedError( + "Your gym version is too recent, RoboHiveEnv is only compatible with gym 0.13." + ) + + @implement_for( + "gym", "0.13", "0.14" + ) # make sure gym 0.13 is installed, otherwise raise an exception + def _build_env( # noqa: F811 + self, + env_name: str, + from_pixels: bool = False, + pixels_only: bool = False, + **kwargs, + ) -> "gym.core.Env": + if from_pixels: + if "cameras" not in kwargs: + warnings.warn( + "from_pixels=True will lead to a registration of ALL available cameras, " + "which may lead to performance issue. " + "Consider passing only the needed cameras through cameras=list_of_cameras. " + "The list of available cameras for a specific environment can be obtained via " + "RobohiveEnv.get_available_cams(env_name)." + ) + kwargs["cameras"] = self.get_available_cams(env_name) + cams = list(kwargs.pop("cameras")) + env_name = self.register_visual_env(cams=cams, env_name=env_name) + + elif "cameras" in kwargs and kwargs["cameras"]: + raise RuntimeError("Got a list of cameras but from_pixels is set to False.") + + self.pixels_only = pixels_only + try: + render_device = int(str(self.device)[-1]) + except ValueError: + render_device = 0 + + if not _has_robohive: + raise RuntimeError( + f"gym not found, unable to create {env_name}. " + f"Consider downloading and installing dm_control from" + f" {self.git_url}" + ) + try: + env = self.lib.make( + env_name, + frameskip=self.frame_skip, + device_id=render_device, + return_dict=True, + **kwargs, + ) + self.wrapper_frame_skip = 1 + if env.visual_keys: + from_pixels = bool(len(env.visual_keys)) + else: + from_pixels = False + except TypeError as err: + if "unexpected keyword argument 'frameskip" not in str(err): + raise err + kwargs.pop("framek_skip") + env = self.lib.make( + env_name, return_dict=True, device_id=render_device, **kwargs + ) + self.wrapper_frame_skip = self.frame_skip + # except Exception as err: + # raise RuntimeError(f"Failed to build env {env_name}.") from err + self.from_pixels = from_pixels + self.render_device = render_device + if kwargs.get("read_info", True): + self.info_dict_reader = self.read_info + return env + + @classmethod + def register_visual_env(cls, env_name, cams): + with set_directory(cls.CURR_DIR): + if not len(cams): + raise RuntimeError("Cannot create a visual envs without cameras.") + cams = sorted(cams) + new_env_name = "-".join([cam[:-3] for cam in cams] + [env_name]) + if new_env_name in cls.env_list: + return new_env_name + visual_keys = [f"rgb:{c}:224x224:2d" for c in cams] + register_env_variant( + env_name, + variants={ + "visual_keys": visual_keys, + }, + variant_id=new_env_name, + ) + env_name = new_env_name + cls.env_list += [env_name] + return env_name + + def _make_specs(self, env: "gym.Env") -> None: + # if self.from_pixels: + # num_cams = len(env.visual_keys) + # n_pix = 224 * 224 * 3 * num_cams + # env.observation_space = gym.spaces.Box( + # -8 * np.ones(env.obs_dim - n_pix), + # 8 * np.ones(env.obs_dim - n_pix), + # dtype=np.float32, + # ) + self.action_spec = _gym_to_torchrl_spec_transform( + env.action_space, device=self.device + ) + # get a np rollout + rollout = TensorDict({"done": torch.zeros(3, 1)}, [3]) + env.reset() + + def get_obs(): + _dict = {} + obs_dict = copy(env.obs_dict) + if self.from_pixels: + visual = self.env.get_exteroception() + obs_dict.update(visual) + pixel_list = [] + for obs_key in obs_dict: + if obs_key.startswith("rgb"): + pix = obs_dict[obs_key] + if not pix.shape[0] == 1: + pix = pix[None] + pixel_list.append(pix) + elif obs_key in env.obs_keys: + value = env.obs_dict[obs_key] + if not value.shape: + value = value[None] + _dict[obs_key] = value + if pixel_list: + _dict["pixels"] = np.concatenate(pixel_list, 0) + return _dict + + for i in range(3): + _dict = {} + _dict.update(get_obs()) + _dict["action"] = action = env.action_space.sample() + _, r, d, _ = env.step(action) + _dict[("next", "reward")] = r.reshape(1) + _dict[("next", "done")] = [1] + _dict["next"] = get_obs() + rollout[i] = TensorDict(_dict, []) + + observation_spec = make_composite_from_td( + rollout.get("next").exclude("done", "reward")[0] + ) + self.observation_spec = observation_spec + + self.reward_spec = UnboundedContinuousTensorSpec( + shape=(1,), + device=self.device, + ) # default + + rollout = self.rollout(2, return_contiguous=False).get("next") + rollout = rollout.exclude( + self.reward_key, self.done_key, *self.observation_spec.keys(True, True) + ) + rollout = rollout[..., 0] + spec = make_composite_from_td(rollout) + self.observation_spec.update(spec) + + def set_from_pixels(self, from_pixels: bool) -> None: + """Sets the from_pixels attribute to an existing environment. + + Args: + from_pixels (bool): new value for the from_pixels attribute + + """ + if from_pixels is self.from_pixels: + return + self.from_pixels = from_pixels + self._make_specs(self.env) + + def read_obs(self, observation): + # the info is missing from the reset + observations = self.env.obs_dict + try: + del observations["t"] + except KeyError: + pass + # recover vec + obsdict = {} + pixel_list = [] + if self.from_pixels: + visual = self.env.get_exteroception() + observations.update(visual) + for key in observations: + if key.startswith("rgb"): + pix = observations[key] + if not pix.shape[0] == 1: + pix = pix[None] + pixel_list.append(pix) + elif key in self._env.obs_keys: + value = observations[key] + if not value.shape: + value = value[None] + obsdict[key] = value # ravel helps with images + # if obsvec: + # obsvec = np.concatenate(obsvec, 0) + if self.from_pixels: + obsdict.update({"pixels": np.concatenate(pixel_list, 0)}) + out = obsdict + return super().read_obs(out) + + def read_info(self, info, tensordict_out): + out = {} + for key, value in info.items(): + if key in ("obs_dict", "done", "reward", *self._env.obs_keys, "act"): + continue + if isinstance(value, dict): + value = {key: _val for key, _val in value.items() if _val is not None} + value = make_tensordict(value, batch_size=[]) + if value is not None: + out[key] = value + tensordict_out.update(out) + tensordict_out.update( + tensordict_out.apply(lambda x: x.reshape((1,)) if not x.shape else x) + ) + return tensordict_out + + def to(self, *args, **kwargs): + out = super().to(*args, **kwargs) + try: + render_device = int(str(out.device)[-1]) + except ValueError: + render_device = 0 + if render_device != self.render_device: + out._build_env(**self._constructor_kwargs) + return out + + @classmethod + def get_available_cams(cls, env_name): + env = gym.make(env_name) + cams = [env.sim.model.id2name(ic, 7) for ic in range(env.sim.model.ncam)] + return cams + + +if _has_robohive: + RoboHiveEnv.register_envs() diff --git a/torchrl/envs/utils.py b/torchrl/envs/utils.py index 914dce8b67c..784c9ea955f 100644 --- a/torchrl/envs/utils.py +++ b/torchrl/envs/utils.py @@ -427,9 +427,22 @@ def check_env_specs(env, return_contiguous=True, check_dtype=True, seed=0): fake_tensordict = fake_tensordict.expand(*real_tensordict.shape) else: fake_tensordict = torch.stack([fake_tensordict.clone() for _ in range(3)], -1) + # eliminate empty containers + fake_tensordict_select = fake_tensordict.select(*fake_tensordict.keys(True, True)) + real_tensordict_select = real_tensordict.select(*real_tensordict.keys(True, True)) + # check keys + fake_tensordict_keys = set(fake_tensordict.keys(True, True)) + real_tensordict_keys = set(real_tensordict.keys(True, True)) + if fake_tensordict_keys != real_tensordict_keys: + raise AssertionError( + f"""The keys of the specs and data do not match: + - List of keys present in real but not in fake: {real_tensordict_keys-fake_tensordict_keys}, + - List of keys present in fake but not in real: {fake_tensordict_keys-real_tensordict_keys}. +""" + ) if ( - fake_tensordict.apply(lambda x: torch.zeros_like(x)) - != real_tensordict.apply(lambda x: torch.zeros_like(x)) + fake_tensordict_select.apply(lambda x: torch.zeros_like(x)) + != real_tensordict_select.apply(lambda x: torch.zeros_like(x)) ).any(): raise AssertionError( "zeroing the two tensordicts did not make them identical. " @@ -437,7 +450,9 @@ def check_env_specs(env, return_contiguous=True, check_dtype=True, seed=0): ) # Checks shapes and eventually dtypes of keys at all nesting levels - _per_level_env_check(fake_tensordict, real_tensordict, check_dtype=check_dtype) + _per_level_env_check( + fake_tensordict_select, real_tensordict_select, check_dtype=check_dtype + ) # Check specs last_td = real_tensordict[..., -1] @@ -555,7 +570,9 @@ def make_composite_from_td(data): key: make_composite_from_td(tensor) if isinstance(tensor, TensorDictBase) else UnboundedContinuousTensorSpec( - dtype=tensor.dtype, device=tensor.device, shape=tensor.shape + dtype=tensor.dtype, + device=tensor.device, + shape=tensor.shape if tensor.shape else [1], ) for key, tensor in data.items() }, From a45aaba4ac7d1be632449a8b91a45b87f1316d61 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 6 Sep 2023 20:54:41 +0100 Subject: [PATCH 065/148] [BugFix] Empty-spec tolerance (#1501) --- torchrl/data/tensor_specs.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/torchrl/data/tensor_specs.py b/torchrl/data/tensor_specs.py index c8bca60907e..227e9fd0128 100644 --- a/torchrl/data/tensor_specs.py +++ b/torchrl/data/tensor_specs.py @@ -2925,6 +2925,10 @@ def shape(self, value: torch.Size): ) self._shape = torch.Size(value) + def is_empty(self): + """Whether the composite spec contains specs or not.""" + return len(self._specs) == 0 + @property def ndim(self): return self.ndimension() @@ -3177,7 +3181,7 @@ def type_check( def is_in(self, val: Union[dict, TensorDictBase]) -> bool: for key, item in self._specs.items(): - if item is None: + if item is None or (isinstance(item, CompositeSpec) and item.is_empty()): continue val_item = val.get(key) if not item.is_in(val_item): From d8a0bc876aebd38fd1d42ea5d7894e0d88471796 Mon Sep 17 00:00:00 2001 From: Kushaan Gupta Date: Thu, 7 Sep 2023 06:37:34 -0600 Subject: [PATCH 066/148] [Doc] correct typos in pendulum tutorial (#1502) --- tutorials/sphinx-tutorials/pendulum.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tutorials/sphinx-tutorials/pendulum.py b/tutorials/sphinx-tutorials/pendulum.py index 85c4226dfb2..e623bc90df4 100644 --- a/tutorials/sphinx-tutorials/pendulum.py +++ b/tutorials/sphinx-tutorials/pendulum.py @@ -28,7 +28,7 @@ - Transforming your environment inputs and outputs, and writing your own transforms; - How to use :class:`tensordict.TensorDict` to carry arbitrary data structures - from sep to step. + from step to step. In the process, we will touch three crucial components of TorchRL: @@ -437,7 +437,7 @@ def make_composite_from_td(td): # Reproducible experiments: seeding # --------------------------------- # -# Seeding an environment is a commong operation when initializing an experiment. +# Seeding an environment is a common operation when initializing an experiment. # :func:`EnvBase._set_seed` only goal is to set the seed of the contained # simulator. If possible, this operation should not call `reset()` or interact # with the environment execution. The parent :func:`EnvBase.set_seed` method From 7ee8f1399d81280f1c721d07adc4dcd20130468e Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Thu, 7 Sep 2023 14:33:51 +0100 Subject: [PATCH 067/148] [Feature] Making action masks compatible with q value modules and e-greedy (#1499) Signed-off-by: Matteo Bettini Co-authored-by: Vincent Moens --- docs/source/reference/modules.rst | 2 +- examples/multiagent/iql.py | 2 +- examples/multiagent/qmix_vdn.py | 2 +- test/test_actors.py | 33 +++ test/test_exploration.py | 161 +++++++++++++- torchrl/modules/__init__.py | 1 + torchrl/modules/tensordict_module/__init__.py | 1 + torchrl/modules/tensordict_module/actors.py | 54 ++++- .../modules/tensordict_module/exploration.py | 205 +++++++++++++++++- 9 files changed, 442 insertions(+), 19 deletions(-) diff --git a/docs/source/reference/modules.rst b/docs/source/reference/modules.rst index 704c8e6276a..0281061b007 100644 --- a/docs/source/reference/modules.rst +++ b/docs/source/reference/modules.rst @@ -68,7 +68,7 @@ other cases, the action written in the tensordict is simply the network output. :template: rl_template_noinherit.rst AdditiveGaussianWrapper - EGreedyWrapper + EGreedyModule OrnsteinUhlenbeckProcessWrapper Probabilistic actors diff --git a/examples/multiagent/iql.py b/examples/multiagent/iql.py index 00c7bf5fc87..4d36614f199 100644 --- a/examples/multiagent/iql.py +++ b/examples/multiagent/iql.py @@ -101,7 +101,7 @@ def train(cfg: "DictConfig"): # noqa: F821 eps_end=0, annealing_num_steps=int(cfg.collector.total_frames * (1 / 2)), action_key=env.action_key, - spec=env.unbatched_action_spec[env.action_key], + spec=env.unbatched_action_spec, ) collector = SyncDataCollector( diff --git a/examples/multiagent/qmix_vdn.py b/examples/multiagent/qmix_vdn.py index 55c5ef012ba..222e0434db2 100644 --- a/examples/multiagent/qmix_vdn.py +++ b/examples/multiagent/qmix_vdn.py @@ -102,7 +102,7 @@ def train(cfg: "DictConfig"): # noqa: F821 eps_end=0, annealing_num_steps=int(cfg.collector.total_frames * (1 / 2)), action_key=env.action_key, - spec=env.unbatched_action_spec[env.action_key], + spec=env.unbatched_action_spec, ) if cfg.loss.mixer_type == "qmix": diff --git a/test/test_actors.py b/test/test_actors.py index d16c95731d5..06d59de0a48 100644 --- a/test/test_actors.py +++ b/test/test_actors.py @@ -613,6 +613,39 @@ def test_qvalue_hook_categorical_1_dim_batch(self, action_space, expected_action assert values.shape == in_values.shape assert (values == in_values).all() + @pytest.mark.parametrize("action_space", ["categorical", "one-hot"]) + @pytest.mark.parametrize("action_n", [2, 3, 4, 5]) + def test_qvalue_mask(self, action_space, action_n): + torch.manual_seed(0) + shape = (3, 4, 3, action_n) + action_values = torch.randn(size=shape) + td = TensorDict({"action_value": action_values}, [3]) + module = QValueModule( + action_space=action_space, + action_value_key="action_value", + action_mask_key="action_mask", + ) + with pytest.raises(KeyError, match="Action mask key "): + module(td) + + action_mask = torch.randint(high=2, size=shape).to(torch.bool) + while not action_mask.any(dim=-1).all() or action_mask.all(): + action_mask = torch.randint(high=2, size=shape).to(torch.bool) + + td.set("action_mask", action_mask) + module(td) + new_action_values = td.get("action_value") + + assert (new_action_values[~action_mask] != action_values[~action_mask]).all() + assert (new_action_values[action_mask] == action_values[action_mask]).all() + assert (td.get("chosen_action_value") > torch.finfo(torch.float).min).all() + + if action_space == "one-hot": + assert (td.get("action")[action_mask]).any() + assert not (td.get("action")[~action_mask]).any() + else: + assert action_mask.gather(-1, td.get("action").unsqueeze(-1)).all() + @pytest.mark.parametrize("device", get_default_devices()) def test_value_based_policy(device): diff --git a/test/test_exploration.py b/test/test_exploration.py index c823dbaf4f4..c4cd44f0692 100644 --- a/test/test_exploration.py +++ b/test/test_exploration.py @@ -14,12 +14,18 @@ NestedCountingEnv, ) from scipy.stats import ttest_1samp -from tensordict.nn import InteractionType, TensorDictModule + +from tensordict.nn import InteractionType, TensorDictModule, TensorDictSequential from tensordict.tensordict import TensorDict from torch import nn from torchrl.collectors import SyncDataCollector -from torchrl.data import BoundedTensorSpec, CompositeSpec +from torchrl.data import ( + BoundedTensorSpec, + CompositeSpec, + DiscreteTensorSpec, + OneHotDiscreteTensorSpec, +) from torchrl.envs import SerialEnv from torchrl.envs.transforms.transforms import gSDENoise, InitTracker, TransformedEnv from torchrl.envs.utils import set_exploration_type @@ -30,23 +36,37 @@ NormalParamWrapper, ) from torchrl.modules.models.exploration import LazygSDEModule -from torchrl.modules.tensordict_module.actors import Actor, ProbabilisticActor +from torchrl.modules.tensordict_module.actors import ( + Actor, + ProbabilisticActor, + QValueActor, +) from torchrl.modules.tensordict_module.exploration import ( _OrnsteinUhlenbeckProcess, AdditiveGaussianWrapper, + EGreedyModule, EGreedyWrapper, OrnsteinUhlenbeckProcessWrapper, ) -@pytest.mark.parametrize("eps_init", [0.0, 0.5, 1.0]) class TestEGreedy: - def test_egreedy(self, eps_init): + @pytest.mark.parametrize("eps_init", [0.0, 0.5, 1.0]) + @pytest.mark.parametrize("module", [True, False]) + def test_egreedy(self, eps_init, module): torch.manual_seed(0) spec = BoundedTensorSpec(1, 1, torch.Size([4])) module = torch.nn.Linear(4, 4, bias=False) + policy = Actor(spec=spec, module=module) - explorative_policy = EGreedyWrapper(policy, eps_init=eps_init, eps_end=eps_init) + if module: + explorative_policy = TensorDictSequential( + policy, EGreedyModule(eps_init=eps_init, eps_end=eps_init, spec=spec) + ) + else: + explorative_policy = EGreedyWrapper( + policy, eps_init=eps_init, eps_end=eps_init + ) td = TensorDict({"observation": torch.zeros(10, 4)}, batch_size=[10]) action = explorative_policy(td).get("action") if eps_init == 0: @@ -58,6 +78,135 @@ def test_egreedy(self, eps_init): assert (action == 0).any() assert ((action == 1) | (action == 0)).all() + @pytest.mark.parametrize("eps_init", [0.0, 0.5, 1.0]) + @pytest.mark.parametrize("module", [True, False]) + @pytest.mark.parametrize("spec_class", ["discrete", "one_hot"]) + def test_egreedy_masked(self, module, eps_init, spec_class): + torch.manual_seed(0) + action_size = 4 + batch_size = (3, 4, 2) + module = torch.nn.Linear(action_size, action_size, bias=False) + if spec_class == "discrete": + spec = DiscreteTensorSpec(action_size) + else: + spec = OneHotDiscreteTensorSpec( + action_size, + shape=(action_size,), + ) + policy = QValueActor(spec=spec, module=module, action_mask_key="action_mask") + if module: + explorative_policy = TensorDictSequential( + policy, + EGreedyModule( + eps_init=eps_init, + eps_end=eps_init, + spec=spec, + action_mask_key="action_mask", + ), + ) + else: + explorative_policy = EGreedyWrapper( + policy, + eps_init=eps_init, + eps_end=eps_init, + action_mask_key="action_mask", + ) + + td = TensorDict( + {"observation": torch.zeros(*batch_size, action_size)}, + batch_size=batch_size, + ) + with pytest.raises(KeyError, match="Action mask key action_mask not found in"): + explorative_policy(td) + + torch.manual_seed(0) + action_mask = torch.ones(*batch_size, action_size).to(torch.bool) + td = TensorDict( + { + "observation": torch.zeros(*batch_size, action_size), + "action_mask": action_mask, + }, + batch_size=batch_size, + ) + action = explorative_policy(td).get("action") + + torch.manual_seed(0) + action_mask = torch.randint(high=2, size=(*batch_size, action_size)).to( + torch.bool + ) + while not action_mask.any(dim=-1).all() or action_mask.all(): + action_mask = torch.randint(high=2, size=(*batch_size, action_size)).to( + torch.bool + ) + + td = TensorDict( + { + "observation": torch.zeros(*batch_size, action_size), + "action_mask": action_mask, + }, + batch_size=batch_size, + ) + masked_action = explorative_policy(td).get("action") + + if spec_class == "discrete": + action = spec.to_one_hot(action) + masked_action = spec.to_one_hot(masked_action) + + assert not (action[~action_mask] == 0).all() + assert (masked_action[~action_mask] == 0).all() + + def test_egreedy_wrapper_deprecation(self): + torch.manual_seed(0) + spec = BoundedTensorSpec(1, 1, torch.Size([4])) + module = torch.nn.Linear(4, 4, bias=False) + policy = Actor(spec=spec, module=module) + with pytest.deprecated_call(): + EGreedyWrapper(policy) + + def test_no_spec_error( + self, + ): + torch.manual_seed(0) + action_size = 4 + batch_size = (3, 4, 2) + module = torch.nn.Linear(action_size, action_size, bias=False) + spec = OneHotDiscreteTensorSpec(action_size, shape=(action_size,)) + policy = QValueActor(spec=spec, module=module) + explorative_policy = TensorDictSequential( + policy, + EGreedyModule(spec=None), + ) + td = TensorDict( + { + "observation": torch.zeros(*batch_size, action_size), + }, + batch_size=batch_size, + ) + + with pytest.raises( + RuntimeError, match="spec must be provided to the exploration wrapper." + ): + explorative_policy(td) + + @pytest.mark.parametrize("module", [True, False]) + def test_wrong_action_shape(self, module): + torch.manual_seed(0) + spec = BoundedTensorSpec(1, 1, torch.Size([4])) + module = torch.nn.Linear(4, 5, bias=False) + + policy = Actor(spec=spec, module=module) + if module: + explorative_policy = TensorDictSequential(policy, EGreedyModule(spec=spec)) + else: + explorative_policy = EGreedyWrapper( + policy, + ) + td = TensorDict({"observation": torch.zeros(10, 4)}, batch_size=[10]) + with pytest.raises( + ValueError, match="Action spec shape does not match the action shape" + ): + explorative_policy(td) + @pytest.mark.parametrize("device", get_default_devices()) class TestOrnsteinUhlenbeckProcessWrapper: diff --git a/torchrl/modules/__init__.py b/torchrl/modules/__init__.py index ad654dbc7c9..604bb3bdca7 100644 --- a/torchrl/modules/__init__.py +++ b/torchrl/modules/__init__.py @@ -53,6 +53,7 @@ DistributionalQValueActor, DistributionalQValueHook, DistributionalQValueModule, + EGreedyModule, EGreedyWrapper, LMHeadActorValueOperator, LSTMModule, diff --git a/torchrl/modules/tensordict_module/__init__.py b/torchrl/modules/tensordict_module/__init__.py index 645c7b6f122..d1930855ab2 100644 --- a/torchrl/modules/tensordict_module/__init__.py +++ b/torchrl/modules/tensordict_module/__init__.py @@ -23,6 +23,7 @@ from .common import SafeModule, VmapModule from .exploration import ( AdditiveGaussianWrapper, + EGreedyModule, EGreedyWrapper, OrnsteinUhlenbeckProcessWrapper, ) diff --git a/torchrl/modules/tensordict_module/actors.py b/torchrl/modules/tensordict_module/actors.py index da719102179..7606836caa0 100644 --- a/torchrl/modules/tensordict_module/actors.py +++ b/torchrl/modules/tensordict_module/actors.py @@ -327,6 +327,8 @@ class QValueModule(TensorDictModuleBase): conditions the action_space. action_value_key (str or tuple of str, optional): The input key representing the action value. Defaults to ``"action_value"``. + action_mask_key (str or tuple of str, optional): The input key + representing the action mask. Defaults to ``"None"`` (equivalent to no masking). out_keys (list of str or tuple of str, optional): The output keys representing the actions, action values and chosen action value. Defaults to ``["action", "action_value", "chosen_action_value"]``. @@ -378,6 +380,7 @@ def __init__( self, action_space: Optional[str], action_value_key: Optional[NestedKey] = None, + action_mask_key: Optional[NestedKey] = None, out_keys: Optional[Sequence[NestedKey]] = None, var_nums: Optional[int] = None, spec: Optional[TensorSpec] = None, @@ -407,7 +410,11 @@ def __init__( ) if action_value_key is None: action_value_key = "action_value" - self.in_keys = [action_value_key] + self.action_mask_key = action_mask_key + in_keys = [action_value_key] + if self.action_mask_key is not None: + in_keys.append(self.action_mask_key) + self.in_keys = in_keys if out_keys is None: out_keys = ["action", action_value_key, "chosen_action_value"] elif action_value_key not in out_keys: @@ -446,6 +453,15 @@ def forward(self, tensordict: torch.Tensor) -> TensorDictBase: raise KeyError( f"Action value key {self.action_value_key} not found in {tensordict}." ) + if self.action_mask_key is not None: + action_mask = tensordict.get(self.action_mask_key, None) + if action_mask is None: + raise KeyError( + f"Action mask key {self.action_mask_key} not found in {tensordict}." + ) + action_values = torch.where( + action_mask, action_values, torch.finfo(action_values.dtype).min + ) action = self.action_func_mapping[self.action_space](action_values) @@ -528,6 +544,8 @@ class DistributionalQValueModule(QValueModule): support (torch.Tensor): support of the action values. action_value_key (str or tuple of str, optional): The input key representing the action value. Defaults to ``"action_value"``. + action_mask_key (str or tuple of str, optional): The input key + representing the action mask. Defaults to ``"None"`` (equivalent to no masking). out_keys (list of str or tuple of str, optional): The output keys representing the actions and action values. Defaults to ``["action", "action_value"]``. @@ -583,6 +601,7 @@ def __init__( action_space: Optional[str], support: torch.Tensor, action_value_key: Optional[NestedKey] = None, + action_mask_key: Optional[NestedKey] = None, out_keys: Optional[Sequence[NestedKey]] = None, var_nums: Optional[int] = None, spec: TensorSpec = None, @@ -595,6 +614,7 @@ def __init__( super().__init__( action_space=action_space, action_value_key=action_value_key, + action_mask_key=action_mask_key, out_keys=out_keys, var_nums=var_nums, spec=spec, @@ -609,6 +629,15 @@ def forward(self, tensordict: torch.Tensor) -> TensorDictBase: raise KeyError( f"Action value key {self.action_value_key} not found in {tensordict}." ) + if self.action_mask_key is not None: + action_mask = tensordict.get(self.action_mask_key, None) + if action_mask is None: + raise KeyError( + f"Action mask key {self.action_mask_key} not found in {tensordict}." + ) + action_values = torch.where( + action_mask, action_values, torch.finfo(action_values.dtype).min + ) action = self.action_func_mapping[self.action_space](action_values) @@ -698,6 +727,8 @@ class QValueHook: action_value_key (str or tuple of str, optional): to be used when hooked on a TensorDictModule. The input key representing the action value. Defaults to ``"action_value"``. + action_mask_key (str or tuple of str, optional): The input key + representing the action mask. Defaults to ``"None"`` (equivalent to no masking). out_keys (list of str or tuple of str, optional): to be used when hooked on a TensorDictModule. The output keys representing the actions, action values and chosen action value. Defaults to ``["action", "action_value", "chosen_action_value"]``. @@ -733,6 +764,7 @@ def __init__( action_space: str, var_nums: Optional[int] = None, action_value_key: Optional[NestedKey] = None, + action_mask_key: Optional[NestedKey] = None, out_keys: Optional[Sequence[NestedKey]] = None, ): if isinstance(action_space, TensorSpec): @@ -747,6 +779,7 @@ def __init__( action_space=action_space, var_nums=var_nums, action_value_key=action_value_key, + action_mask_key=action_mask_key, out_keys=out_keys, ) action_value_key = self.qvalue_model.in_keys[0] @@ -776,6 +809,11 @@ class DistributionalQValueHook(QValueHook): Args: action_space (str): Action space. Must be one of ``"one-hot"``, ``"mult-one-hot"``, ``"binary"`` or ``"categorical"``. + action_value_key (str or tuple of str, optional): to be used when hooked on + a TensorDictModule. The input key representing the action value. Defaults + to ``"action_value"``. + action_mask_key (str or tuple of str, optional): The input key + representing the action mask. Defaults to ``"None"`` (equivalent to no masking). support (torch.Tensor): support of the action values. var_nums (int, optional): if ``action_space = "mult-one-hot"``, this value represents the cardinality of each @@ -823,6 +861,7 @@ def __init__( support: torch.Tensor, var_nums: Optional[int] = None, action_value_key: Optional[NestedKey] = None, + action_mask_key: Optional[NestedKey] = None, out_keys: Optional[Sequence[NestedKey]] = None, ): if isinstance(action_space, TensorSpec): @@ -837,6 +876,7 @@ def __init__( var_nums=var_nums, support=support, action_value_key=action_value_key, + action_mask_key=action_mask_key, out_keys=out_keys, ) action_value_key = self.qvalue_model.in_keys[0] @@ -884,6 +924,8 @@ class QValueActor(SafeSequential): is a :class:`tensordict.nn.TensorDictModuleBase` instance, it must match one of its output keys. Otherwise, this string represents the name of the action-value entry in the output tensordict. + action_mask_key (str or tuple of str, optional): The input key + representing the action mask. Defaults to ``"None"`` (equivalent to no masking). .. note:: ``out_keys`` cannot be passed. If the module is a :class:`tensordict.nn.TensorDictModule` @@ -942,6 +984,7 @@ def __init__( safe=False, action_space: Optional[str] = None, action_value_key=None, + action_mask_key: Optional[NestedKey] = None, ): if isinstance(action_space, TensorSpec): warnings.warn( @@ -987,6 +1030,7 @@ def __init__( spec=spec, safe=safe, action_space=action_space, + action_mask_key=action_mask_key, ) super().__init__(module, qvalue) @@ -1035,6 +1079,12 @@ class DistributionalQValueActor(QValueActor): make_log_softmax (bool, optional): if ``True`` and if the module is not of type :class:`torchrl.modules.DistributionalDQNnet`, a log-softmax operation will be applied along dimension -2 of the action value tensor. + action_value_key (str or tuple of str, optional): if the input module + is a :class:`tensordict.nn.TensorDictModuleBase` instance, it must + match one of its output keys. Otherwise, this string represents + the name of the action-value entry in the output tensordict. + action_mask_key (str or tuple of str, optional): The input key + representing the action mask. Defaults to ``"None"`` (equivalent to no masking). Examples: >>> import torch @@ -1079,6 +1129,7 @@ def __init__( var_nums: Optional[int] = None, action_space: Optional[str] = None, action_value_key: str = "action_value", + action_mask_key: Optional[NestedKey] = None, make_log_softmax: bool = True, ): if isinstance(action_space, TensorSpec): @@ -1121,6 +1172,7 @@ def __init__( spec=spec, safe=safe, action_space=action_space, + action_mask_key=action_mask_key, support=support, var_nums=var_nums, ) diff --git a/torchrl/modules/tensordict_module/exploration.py b/torchrl/modules/tensordict_module/exploration.py index 20d26b7aabd..d2e8ed8e3a1 100644 --- a/torchrl/modules/tensordict_module/exploration.py +++ b/torchrl/modules/tensordict_module/exploration.py @@ -7,7 +7,12 @@ import numpy as np import torch -from tensordict.nn import TensorDictModule, TensorDictModuleWrapper + +from tensordict.nn import ( + TensorDictModule, + TensorDictModuleBase, + TensorDictModuleWrapper, +) from tensordict.tensordict import TensorDictBase from tensordict.utils import expand_as_right, expand_right, NestedKey @@ -17,13 +22,168 @@ __all__ = [ "EGreedyWrapper", + "EGreedyModule", "AdditiveGaussianWrapper", "OrnsteinUhlenbeckProcessWrapper", ] +class EGreedyModule(TensorDictModuleBase): + """Epsilon-Greedy exploration module. + + This module randomly updates the action(s) in a tensordict given an epsilon greedy exploration strategy. + At each call, random draws (one per action) are executed given a certain probability threshold. If successful, + the corresponding actions are being replaced by random samples drawn from the action spec provided. + Others are left unchanged. + + Args: + spec (TensorSpec): the spec used for sampling actions. + eps_init (scalar, optional): initial epsilon value. + default: 1.0 + eps_end (scalar, optional): final epsilon value. + default: 0.1 + annealing_num_steps (int, optional): number of steps it will take for epsilon to reach + the ``eps_end`` value. Defaults to `1000`. + + Keyword Args: + action_key (NestedKey, optional): the key where the action can be found in the input tensordict. + Default is ``"action"``. + action_mask_key (NestedKey, optional): the key where the action mask can be found in the input tensordict. + Default is ``None`` (corresponding to no mask). + + .. note:: + It is crucial to incorporate a call to :meth:`~.step` in the training loop + to update the exploration factor. + Since it is not easy to capture this omission no warning or exception + will be raised if this is ommitted! + + Examples: + >>> import torch + >>> from tensordict import TensorDict + >>> from tensordict.nn import TensorDictSequential + >>> from torchrl.modules import EGreedyModule, Actor + >>> from torchrl.data import BoundedTensorSpec + >>> torch.manual_seed(0) + >>> spec = BoundedTensorSpec(-1, 1, torch.Size([4])) + >>> module = torch.nn.Linear(4, 4, bias=False) + >>> policy = Actor(spec=spec, module=module) + >>> explorative_policy = TensorDictSequential(policy, EGreedyModule(eps_init=0.2)) + >>> td = TensorDict({"observation": torch.zeros(10, 4)}, batch_size=[10]) + >>> print(explorative_policy(td).get("action")) + tensor([[ 0.0000, 0.0000, 0.0000, 0.0000], + [ 0.0000, 0.0000, 0.0000, 0.0000], + [ 0.9055, -0.9277, -0.6295, -0.2532], + [ 0.0000, 0.0000, 0.0000, 0.0000], + [ 0.0000, 0.0000, 0.0000, 0.0000], + [ 0.0000, 0.0000, 0.0000, 0.0000], + [ 0.0000, 0.0000, 0.0000, 0.0000], + [ 0.0000, 0.0000, 0.0000, 0.0000], + [ 0.0000, 0.0000, 0.0000, 0.0000], + [ 0.0000, 0.0000, 0.0000, 0.0000]], grad_fn=) + + """ + + def __init__( + self, + spec: TensorSpec, + eps_init: float = 1.0, + eps_end: float = 0.1, + annealing_num_steps: int = 1000, + *, + action_key: Optional[NestedKey] = "action", + action_mask_key: Optional[NestedKey] = None, + ): + self.action_key = action_key + self.action_mask_key = action_mask_key + in_keys = [self.action_key] + if self.action_mask_key is not None: + in_keys.append(self.action_mask_key) + self.in_keys = in_keys + self.out_keys = [self.action_key] + + super().__init__() + + self.register_buffer("eps_init", torch.tensor([eps_init])) + self.register_buffer("eps_end", torch.tensor([eps_end])) + if self.eps_end > self.eps_init: + raise RuntimeError("eps should decrease over time or be constant") + self.annealing_num_steps = annealing_num_steps + self.register_buffer("eps", torch.tensor([eps_init])) + + if spec is not None: + if not isinstance(spec, CompositeSpec) and len(self.out_keys) >= 1: + spec = CompositeSpec({action_key: spec}, shape=spec.shape[:-1]) + self._spec = spec + + @property + def spec(self): + return self._spec + + def step(self, frames: int = 1) -> None: + """A step of epsilon decay. + + After `self.annealing_num_steps` calls to this method, calls result in no-op. + + Args: + frames (int, optional): number of frames since last step. Defaults to ``1``. + + """ + for _ in range(frames): + self.eps.data[0] = max( + self.eps_end.item(), + ( + self.eps - (self.eps_init - self.eps_end) / self.annealing_num_steps + ).item(), + ) + + def forward(self, tensordict: TensorDictBase) -> TensorDictBase: + if exploration_type() == ExplorationType.RANDOM or exploration_type() is None: + if isinstance(self.action_key, tuple) and len(self.action_key) > 1: + action_tensordict = tensordict.get(self.action_key[:-1]) + action_key = self.action_key[-1] + else: + action_tensordict = tensordict + action_key = self.action_key + + out = action_tensordict.get(action_key) + eps = self.eps.item() + cond = ( + torch.rand(action_tensordict.shape, device=action_tensordict.device) + < eps + ).to(out.dtype) + cond = expand_as_right(cond, out) + spec = self.spec + if spec is not None: + if isinstance(spec, CompositeSpec): + spec = spec[self.action_key] + if spec.shape != out.shape: + # In batched envs if the spec is passed unbatched, the rand() will not + # cover all batched dims + if ( + not len(spec.shape) + or out.shape[-len(spec.shape) :] == spec.shape + ): + spec = spec.expand(out.shape) + else: + raise ValueError( + "Action spec shape does not match the action shape" + ) + if self.action_mask_key is not None: + action_mask = tensordict.get(self.action_mask_key, None) + if action_mask is None: + raise KeyError( + f"Action mask key {self.action_mask_key} not found in {tensordict}." + ) + spec.update_mask(action_mask) + out = cond * spec.rand().to(out.device) + (1 - cond) * out + else: + raise RuntimeError("spec must be provided to the exploration wrapper.") + action_tensordict.set(action_key, out) + return tensordict + + class EGreedyWrapper(TensorDictModuleWrapper): - """Epsilon-Greedy PO wrapper. + """[Deprecated] Epsilon-Greedy PO wrapper. Args: policy (TensorDictModule): a deterministic policy. @@ -34,16 +194,16 @@ class EGreedyWrapper(TensorDictModuleWrapper): eps_end (scalar, optional): final epsilon value. default: 0.1 annealing_num_steps (int, optional): number of steps it will take for epsilon to reach the eps_end value - action_key (NestedKey, optional): if the policy module has more than one output key, - its output spec will be of type CompositeSpec. One needs to know where to - find the action spec. - Default is "action". + action_key (NestedKey, optional): the key where the action can be found in the input tensordict. + Default is ``"action"``. + action_mask_key (NestedKey, optional): the key where the action mask can be found in the input tensordict. + Default is ``None`` (corresponding to no mask). spec (TensorSpec, optional): if provided, the sampled action will be - projected onto the valid action space once explored. If not provided, + taken from this action space. If not provided, the exploration wrapper will attempt to recover it from the policy. .. note:: - Once an environment has been wrapped in :class:`EGreedyWrapper`, it is + Once a module has been wrapped in :class:`EGreedyWrapper`, it is crucial to incorporate a call to :meth:`~.step` in the training loop to update the exploration factor. Since it is not easy to capture this omission no warning or exception @@ -82,8 +242,15 @@ def __init__( eps_end: float = 0.1, annealing_num_steps: int = 1000, action_key: Optional[NestedKey] = "action", + action_mask_key: Optional[NestedKey] = None, spec: Optional[TensorSpec] = None, ): + warnings.warn( + "EGreedyWrapper is deprecated and it will be removed in v0.3. " + "Please use torchrl.modules.EGreedyModule instead.", + category=DeprecationWarning, + ) + super().__init__(policy) self.register_buffer("eps_init", torch.tensor([eps_init])) self.register_buffer("eps_end", torch.tensor([eps_end])) @@ -92,6 +259,7 @@ def __init__( self.annealing_num_steps = annealing_num_steps self.register_buffer("eps", torch.tensor([eps_init])) self.action_key = action_key + self.action_mask_key = action_mask_key if spec is not None: if not isinstance(spec, CompositeSpec) and len(self.out_keys) >= 1: spec = CompositeSpec({action_key: spec}, shape=spec.shape[:-1]) @@ -105,7 +273,7 @@ def __init__( if action_key not in self._spec.keys(): self._spec[action_key] = None else: - self._spec = CompositeSpec({key: None for key in policy.out_keys}) + self._spec = spec @property def spec(self): @@ -149,6 +317,25 @@ def forward(self, tensordict: TensorDictBase) -> TensorDictBase: if spec is not None: if isinstance(spec, CompositeSpec): spec = spec[self.action_key] + if spec.shape != out.shape: + # In batched envs if the spec is passed unbatched, the rand() will not + # cover all batched dims + if ( + not len(spec.shape) + or out.shape[-len(spec.shape) :] == spec.shape + ): + spec = spec.expand(out.shape) + else: + raise ValueError( + "Action spec shape does not match the action shape" + ) + if self.action_mask_key is not None: + action_mask = tensordict.get(self.action_mask_key, None) + if action_mask is None: + raise KeyError( + f"Action mask key {self.action_mask_key} not found in {tensordict}." + ) + spec.update_mask(action_mask) out = cond * spec.rand().to(out.device) + (1 - cond) * out else: raise RuntimeError( From c0144febd7ff91b2c8a8a86e67ee0c7e54eb59a8 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Thu, 7 Sep 2023 15:00:53 +0100 Subject: [PATCH 068/148] [BugFix] Fix DDPG squeezing (#1487) Signed-off-by: Matteo Bettini --- torchrl/objectives/ddpg.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/torchrl/objectives/ddpg.py b/torchrl/objectives/ddpg.py index 03966fd21a0..de83b023662 100644 --- a/torchrl/objectives/ddpg.py +++ b/torchrl/objectives/ddpg.py @@ -11,10 +11,10 @@ from typing import Tuple import torch + from tensordict.nn import dispatch, make_functional, repopulate_module, TensorDictModule from tensordict.tensordict import TensorDict, TensorDictBase from tensordict.utils import NestedKey - from torchrl.modules.tensordict_module.actors import ActorCriticWrapper from torchrl.objectives.common import LossModule from torchrl.objectives.utils import ( @@ -269,7 +269,6 @@ def forward(self, tensordict: TensorDictBase) -> TensorDict: """ loss_value, td_error, pred_val, target_value = self._loss_value(tensordict) td_error = td_error.detach() - td_error = td_error.unsqueeze(tensordict.ndimension()) if tensordict.device is not None: td_error = td_error.to(tensordict.device) tensordict.set( From e28ef5ce8b95da8d4d2060c8f70d67fbffc5caf4 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Thu, 7 Sep 2023 15:16:09 +0100 Subject: [PATCH 069/148] [Feature] ClipTransform + rename `min/maximum` -> `low/high` (#1500) --- benchmarks/test_objectives_benchmarks.py | 2 +- docs/source/reference/envs.rst | 1 + examples/a2c/utils.py | 8 +- examples/cql/utils.py | 4 +- examples/multiagent/maddpg_iddpg.py | 4 +- examples/multiagent/mappo_ippo.py | 4 +- examples/multiagent/sac.py | 4 +- examples/ppo/utils.py | 8 +- examples/sac/utils.py | 4 +- test/mocking_classes.py | 16 +- test/test_actors.py | 4 +- test/test_cost.py | 2 +- test/test_helpers.py | 4 +- test/test_modules.py | 4 +- test/test_specs.py | 64 ++--- test/test_transforms.py | 280 +++++++++++++++++-- torchrl/data/tensor_specs.py | 243 +++++++++------- torchrl/envs/__init__.py | 1 + torchrl/envs/common.py | 56 ++-- torchrl/envs/libs/brax.py | 4 +- torchrl/envs/libs/dm_control.py | 4 +- torchrl/envs/libs/jumanji.py | 4 +- torchrl/envs/transforms/__init__.py | 1 + torchrl/envs/transforms/transforms.py | 202 ++++++++++--- torchrl/envs/utils.py | 2 +- torchrl/modules/tensordict_module/actors.py | 14 +- torchrl/objectives/td3.py | 4 +- torchrl/trainers/helpers/models.py | 8 +- tutorials/sphinx-tutorials/multiagent_ppo.py | 4 +- tutorials/sphinx-tutorials/pendulum.py | 20 +- 30 files changed, 685 insertions(+), 295 deletions(-) diff --git a/benchmarks/test_objectives_benchmarks.py b/benchmarks/test_objectives_benchmarks.py index 4fd365afe37..ca5b7eb82ed 100644 --- a/benchmarks/test_objectives_benchmarks.py +++ b/benchmarks/test_objectives_benchmarks.py @@ -435,7 +435,7 @@ def test_td3_speed(benchmark, n_obs=8, n_act=4, ncells=128, batch=128, n_hidden= loss = TD3Loss( actor, value, - action_spec=BoundedTensorSpec(shape=(n_act,), minimum=-1, maximum=1), + action_spec=BoundedTensorSpec(shape=(n_act,), low=-1, high=1), ) loss(td) diff --git a/docs/source/reference/envs.rst b/docs/source/reference/envs.rst index f099c8a6eb5..f6e6c536ce5 100644 --- a/docs/source/reference/envs.rst +++ b/docs/source/reference/envs.rst @@ -450,6 +450,7 @@ to be able to create this other composition: CatFrames CatTensors CenterCrop + ClipTransform Compose DeviceCastTransform DiscreteActionProjection diff --git a/examples/a2c/utils.py b/examples/a2c/utils.py index e49df2b4771..36bfdd5810b 100644 --- a/examples/a2c/utils.py +++ b/examples/a2c/utils.py @@ -253,8 +253,8 @@ def make_a2c_modules_state(proof_environment): num_outputs = proof_environment.action_spec.shape[-1] * 2 distribution_class = TanhNormal distribution_kwargs = { - "min": proof_environment.action_spec.space.minimum, - "max": proof_environment.action_spec.space.maximum, + "min": proof_environment.action_spec.space.low, + "max": proof_environment.action_spec.space.high, "tanh_loc": False, } @@ -320,8 +320,8 @@ def make_a2c_modules_pixels(proof_environment): num_outputs = proof_environment.action_spec.shape distribution_class = TanhNormal distribution_kwargs = { - "min": proof_environment.action_spec.space.minimum, - "max": proof_environment.action_spec.space.maximum, + "min": proof_environment.action_spec.space.low, + "max": proof_environment.action_spec.space.high, } # Define input keys diff --git a/examples/cql/utils.py b/examples/cql/utils.py index c6f56217ff9..e67696488c1 100644 --- a/examples/cql/utils.py +++ b/examples/cql/utils.py @@ -164,8 +164,8 @@ def make_cql_model(cfg, train_env, eval_env, device="cpu"): spec=action_spec, distribution_class=TanhNormal, distribution_kwargs={ - "min": action_spec.space.minimum, - "max": action_spec.space.maximum, + "min": action_spec.space.low, + "max": action_spec.space.high, "tanh_loc": False, }, default_interaction_type=ExplorationType.RANDOM, diff --git a/examples/multiagent/maddpg_iddpg.py b/examples/multiagent/maddpg_iddpg.py index 437e489b58b..0b1cb4079e8 100644 --- a/examples/multiagent/maddpg_iddpg.py +++ b/examples/multiagent/maddpg_iddpg.py @@ -95,8 +95,8 @@ def train(cfg: "DictConfig"): # noqa: F821 out_keys=[env.action_key], distribution_class=TanhDelta, distribution_kwargs={ - "min": env.unbatched_action_spec[("agents", "action")].space.minimum, - "max": env.unbatched_action_spec[("agents", "action")].space.maximum, + "min": env.unbatched_action_spec[("agents", "action")].space.low, + "max": env.unbatched_action_spec[("agents", "action")].space.high, }, return_log_prob=False, ) diff --git a/examples/multiagent/mappo_ippo.py b/examples/multiagent/mappo_ippo.py index fd5a201413b..6be5240935f 100644 --- a/examples/multiagent/mappo_ippo.py +++ b/examples/multiagent/mappo_ippo.py @@ -96,8 +96,8 @@ def train(cfg: "DictConfig"): # noqa: F821 out_keys=[env.action_key], distribution_class=TanhNormal, distribution_kwargs={ - "min": env.unbatched_action_spec[("agents", "action")].space.minimum, - "max": env.unbatched_action_spec[("agents", "action")].space.maximum, + "min": env.unbatched_action_spec[("agents", "action")].space.low, + "max": env.unbatched_action_spec[("agents", "action")].space.high, }, return_log_prob=True, ) diff --git a/examples/multiagent/sac.py b/examples/multiagent/sac.py index da84a078a06..72e45b05a1e 100644 --- a/examples/multiagent/sac.py +++ b/examples/multiagent/sac.py @@ -100,8 +100,8 @@ def train(cfg: "DictConfig"): # noqa: F821 out_keys=[env.action_key], distribution_class=TanhNormal, distribution_kwargs={ - "min": env.unbatched_action_spec[("agents", "action")].space.minimum, - "max": env.unbatched_action_spec[("agents", "action")].space.maximum, + "min": env.unbatched_action_spec[("agents", "action")].space.low, + "max": env.unbatched_action_spec[("agents", "action")].space.high, }, return_log_prob=True, ) diff --git a/examples/ppo/utils.py b/examples/ppo/utils.py index 842e443d3b6..977d8e20b64 100644 --- a/examples/ppo/utils.py +++ b/examples/ppo/utils.py @@ -278,8 +278,8 @@ def make_ppo_modules_state(proof_environment): num_outputs = proof_environment.action_spec.shape[-1] * 2 distribution_class = TanhNormal distribution_kwargs = { - "min": proof_environment.action_spec.space.minimum, - "max": proof_environment.action_spec.space.maximum, + "min": proof_environment.action_spec.space.low, + "max": proof_environment.action_spec.space.high, "tanh_loc": False, } @@ -352,8 +352,8 @@ def make_ppo_modules_pixels(proof_environment): num_outputs = proof_environment.action_spec.shape distribution_class = TanhNormal distribution_kwargs = { - "min": proof_environment.action_spec.space.minimum, - "max": proof_environment.action_spec.space.maximum, + "min": proof_environment.action_spec.space.low, + "max": proof_environment.action_spec.space.high, } # Define input keys diff --git a/examples/sac/utils.py b/examples/sac/utils.py index 023a938df10..9c6f71ffa6c 100644 --- a/examples/sac/utils.py +++ b/examples/sac/utils.py @@ -142,8 +142,8 @@ def make_sac_agent(cfg, train_env, eval_env, device): dist_class = TanhNormal dist_kwargs = { - "min": action_spec.space.minimum, - "max": action_spec.space.maximum, + "min": action_spec.space.low, + "max": action_spec.space.high, "tanh_loc": False, } diff --git a/test/mocking_classes.py b/test/mocking_classes.py index f3193ce2099..485cbf9d40a 100644 --- a/test/mocking_classes.py +++ b/test/mocking_classes.py @@ -1392,13 +1392,13 @@ def __init__(self, max_steps: int = 5, start_val: int = 0, **kwargs): ) def get_agent_obs_spec(self, i): - camera = BoundedTensorSpec(minimum=0, maximum=200, shape=(7, 7, 3)) + camera = BoundedTensorSpec(low=0, high=200, shape=(7, 7, 3)) vector_3d = UnboundedContinuousTensorSpec(shape=(3,)) vector_2d = UnboundedContinuousTensorSpec(shape=(2,)) - lidar = BoundedTensorSpec(minimum=0, maximum=5, shape=(8,)) + lidar = BoundedTensorSpec(low=0, high=5, shape=(8,)) tensor_0 = UnboundedContinuousTensorSpec(shape=(1,)) - tensor_1 = BoundedTensorSpec(minimum=0, maximum=3, shape=(1, 2)) + tensor_1 = BoundedTensorSpec(low=0, high=3, shape=(1, 2)) tensor_2 = UnboundedContinuousTensorSpec(shape=(1, 2, 3)) if i == 0: @@ -1431,8 +1431,8 @@ def get_agent_obs_spec(self, i): raise ValueError(f"Index {i} undefined for index 3") def get_agent_action_spec(self, i): - action_3d = BoundedTensorSpec(minimum=-1, maximum=1, shape=(3,)) - action_2d = BoundedTensorSpec(minimum=-1, maximum=1, shape=(2,)) + action_3d = BoundedTensorSpec(low=-1, high=1, shape=(3,)) + action_2d = BoundedTensorSpec(low=-1, high=1, shape=(2,)) # Some have 2d action and some 3d # TODO Introduce composite heterogeneous actions @@ -1575,7 +1575,7 @@ def make_specs(self): self.unbatched_observation_spec = CompositeSpec( nested_1=CompositeSpec( observation=BoundedTensorSpec( - minimum=0, maximum=200, shape=(self.nested_dim_1, 3) + low=0, high=200, shape=(self.nested_dim_1, 3) ), shape=(self.nested_dim_1,), ), @@ -1598,9 +1598,7 @@ def make_specs(self): shape=(self.nested_dim_1,), ), nested_2=CompositeSpec( - azione=BoundedTensorSpec( - minimum=0, maximum=100, shape=(self.nested_dim_2, 1) - ), + azione=BoundedTensorSpec(low=0, high=100, shape=(self.nested_dim_2, 1)), shape=(self.nested_dim_2,), ), action=OneHotDiscreteTensorSpec(n=2), diff --git a/test/test_actors.py b/test/test_actors.py index 06d59de0a48..69ceb73c8c6 100644 --- a/test/test_actors.py +++ b/test/test_actors.py @@ -51,7 +51,7 @@ def test_probabilistic_actor_nested_delta(log_prob_key, nested_dim=5, n_actions=3): env = NestedCountingEnv(nested_dim=nested_dim) action_spec = BoundedTensorSpec( - shape=torch.Size((nested_dim, n_actions)), maximum=1, minimum=-1 + shape=torch.Size((nested_dim, n_actions)), high=1, low=-1 ) policy_module = TensorDictModule( nn.Linear(1, 1), in_keys=[("data", "states")], out_keys=[("data", "param")] @@ -112,7 +112,7 @@ def test_probabilistic_actor_nested_delta(log_prob_key, nested_dim=5, n_actions= def test_probabilistic_actor_nested_normal(log_prob_key, nested_dim=5, n_actions=3): env = NestedCountingEnv(nested_dim=nested_dim) action_spec = BoundedTensorSpec( - shape=torch.Size((nested_dim, n_actions)), maximum=1, minimum=-1 + shape=torch.Size((nested_dim, n_actions)), high=1, low=-1 ) actor_net = nn.Sequential( nn.Linear(1, 2), diff --git a/test/test_cost.py b/test/test_cost.py index 62f8a123792..653594ad5e8 100644 --- a/test/test_cost.py +++ b/test/test_cost.py @@ -1990,7 +1990,7 @@ def test_td3_separate_losses( loss_fn = TD3Loss( actor, value, - action_spec=BoundedTensorSpec(shape=(n_act,), minimum=-1, maximum=1), + action_spec=BoundedTensorSpec(shape=(n_act,), low=-1, high=1), loss_function="l2", separate_losses=separate_losses, ) diff --git a/test/test_helpers.py b/test/test_helpers.py index 51932185fea..3a90cc5e188 100644 --- a/test/test_helpers.py +++ b/test/test_helpers.py @@ -475,7 +475,7 @@ def test_initialize_stats_from_observation_norms(device, keys, composed, initial if keys: obs_spec = CompositeSpec( **{ - key: BoundedTensorSpec(maximum=1, minimum=1, shape=torch.Size([1])) + key: BoundedTensorSpec(high=1, low=1, shape=torch.Size([1])) for key in keys } ) @@ -483,7 +483,7 @@ def test_initialize_stats_from_observation_norms(device, keys, composed, initial env = ContinuousActionVecMockEnv( device=device, observation_spec=obs_spec, - action_spec=BoundedTensorSpec(minimum=1, maximum=2, shape=torch.Size((1,))), + action_spec=BoundedTensorSpec(low=1, high=2, shape=torch.Size((1,))), ) env.out_key = "observation" else: diff --git a/test/test_modules.py b/test/test_modules.py index 76d8b3a5be0..a3860253b38 100644 --- a/test/test_modules.py +++ b/test/test_modules.py @@ -446,7 +446,7 @@ def test_dreamer_decoder( @pytest.mark.parametrize("action_size", [3, 6]) def test_rssm_prior(self, device, batch_size, stoch_size, deter_size, action_size): action_spec = BoundedTensorSpec( - shape=(action_size,), dtype=torch.float32, minimum=-1, maximum=1 + shape=(action_size,), dtype=torch.float32, low=-1, high=1 ) rssm_prior = RSSMPrior( action_spec, @@ -501,7 +501,7 @@ def test_rssm_rollout( self, device, batch_size, temporal_size, stoch_size, deter_size, action_size ): action_spec = BoundedTensorSpec( - shape=(action_size,), dtype=torch.float32, minimum=-1, maximum=1 + shape=(action_size,), dtype=torch.float32, low=-1, high=1 ) rssm_prior = RSSMPrior( action_spec, diff --git a/test/test_specs.py b/test/test_specs.py index 76bd54b64c5..2959e1db1fb 100644 --- a/test/test_specs.py +++ b/test/test_specs.py @@ -820,32 +820,30 @@ def test_equality_ndbounded(self): device = "cpu" dtype = torch.float16 - ts = BoundedTensorSpec( - minimum=minimum, maximum=maximum, device=device, dtype=dtype - ) + ts = BoundedTensorSpec(low=minimum, high=maximum, device=device, dtype=dtype) ts_same = BoundedTensorSpec( - minimum=minimum, maximum=maximum, device=device, dtype=dtype + low=minimum, high=maximum, device=device, dtype=dtype ) assert ts == ts_same ts_other = BoundedTensorSpec( - minimum=minimum + 1, maximum=maximum, device=device, dtype=dtype + low=minimum + 1, high=maximum, device=device, dtype=dtype ) assert ts != ts_other ts_other = BoundedTensorSpec( - minimum=minimum, maximum=maximum + 1, device=device, dtype=dtype + low=minimum, high=maximum + 1, device=device, dtype=dtype ) assert ts != ts_other ts_other = BoundedTensorSpec( - minimum=minimum, maximum=maximum, device="cpu:0", dtype=dtype + low=minimum, high=maximum, device="cpu:0", dtype=dtype ) assert ts != ts_other ts_other = BoundedTensorSpec( - minimum=minimum, maximum=maximum, device=device, dtype=torch.float64 + low=minimum, high=maximum, device=device, dtype=torch.float64 ) assert ts != ts_other @@ -1035,14 +1033,12 @@ def test_equality_composite(self): bounded_other = BoundedTensorSpec(0, 2, torch.Size((1,)), device, dtype) nd = BoundedTensorSpec( - minimum=minimum, maximum=maximum + 1, device=device, dtype=dtype + low=minimum, high=maximum + 1, device=device, dtype=dtype ) nd_same = BoundedTensorSpec( - minimum=minimum, maximum=maximum + 1, device=device, dtype=dtype - ) - _ = BoundedTensorSpec( - minimum=minimum, maximum=maximum + 3, device=device, dtype=dtype + low=minimum, high=maximum + 1, device=device, dtype=dtype ) + _ = BoundedTensorSpec(low=minimum, high=maximum + 3, device=device, dtype=dtype) # Equality tests ts = CompositeSpec(ts1=bounded) @@ -2177,7 +2173,7 @@ def _get_het_specs( batch_size=(), stack_dim: int = 0, ): - shared = BoundedTensorSpec(minimum=0, maximum=1, shape=(*batch_size, 32, 32, 3)) + shared = BoundedTensorSpec(low=0, high=1, shape=(*batch_size, 32, 32, 3)) hetero_3d = UnboundedContinuousTensorSpec( shape=( *batch_size, @@ -2191,8 +2187,8 @@ def _get_het_specs( ) ) lidar = BoundedTensorSpec( - minimum=0, - maximum=5, + low=0, + high=5, shape=( *batch_size, 20, @@ -2214,7 +2210,7 @@ def _get_het_specs( individual_1_obs = CompositeSpec( { "individual_1_obs_0": BoundedTensorSpec( - minimum=0, maximum=3, shape=(*batch_size, 3, 1, 2) + low=0, high=3, shape=(*batch_size, 3, 1, 2) ) }, shape=(*batch_size, 3), @@ -2564,7 +2560,7 @@ def test_eq(self, batch_size): assert not c == c2 and c != c2 c2 = self._get_het_specs(batch_size=batch_size) - c2[0]["lidar"].space.minimum += 1 + c2[0]["lidar"].space.low += 1 assert not c == c2 and c != c2 @pytest.mark.parametrize("batch_size", [(), (4,), (4, 2)]) @@ -2679,8 +2675,8 @@ def test_repr(self): shared: BoundedTensorSpec( shape=torch.Size([3, 32, 32, 3]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([3, 32, 32, 3]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([3, 32, 32, 3]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([3, 32, 32, 3]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([3, 32, 32, 3]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous)}}, @@ -2689,8 +2685,8 @@ def test_repr(self): lidar: BoundedTensorSpec( shape=torch.Size([20]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([20]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([20]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([20]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([20]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous), @@ -2705,8 +2701,8 @@ def test_repr(self): lidar: BoundedTensorSpec( shape=torch.Size([20]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([20]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([20]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([20]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([20]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous), @@ -2714,8 +2710,8 @@ def test_repr(self): individual_1_obs_0: BoundedTensorSpec( shape=torch.Size([3, 1, 2]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([3, 1, 2]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([3, 1, 2]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([3, 1, 2]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([3, 1, 2]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous), device=cpu, shape=torch.Size([3])), @@ -2742,16 +2738,16 @@ def test_repr(self): lidar: BoundedTensorSpec( shape=torch.Size([2, 20]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([2, 20]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([2, 20]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([2, 20]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([2, 20]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous), shared: BoundedTensorSpec( shape=torch.Size([2, 32, 32, 3]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([2, 32, 32, 3]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([2, 32, 32, 3]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([2, 32, 32, 3]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([2, 32, 32, 3]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous)}}, @@ -2842,13 +2838,11 @@ def test_update(self, batch_size, stack_dim=0): spec.update(spec2) assert spec["hetero"].shape == (3, *batch_size, -1, 1) - spec2[1]["individual_1_obs"]["individual_1_obs_0"].space.minimum += 1 - assert ( - spec[1]["individual_1_obs"]["individual_1_obs_0"].space.minimum.sum() == 0 - ) + spec2[1]["individual_1_obs"]["individual_1_obs_0"].space.low += 1 + assert spec[1]["individual_1_obs"]["individual_1_obs_0"].space.low.sum() == 0 spec.update(spec2) assert ( - spec[1]["individual_1_obs"]["individual_1_obs_0"].space.minimum.sum() == 0 + spec[1]["individual_1_obs"]["individual_1_obs_0"].space.low.sum() == 0 ) # Only non exclusive keys will be updated new = torch.stack( diff --git a/test/test_transforms.py b/test/test_transforms.py index 088b667e847..fc2b74676c7 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -52,6 +52,7 @@ CatFrames, CatTensors, CenterCrop, + ClipTransform, Compose, DeviceCastTransform, DiscreteActionProjection, @@ -323,6 +324,241 @@ def test_transform_inverse(self): raise pytest.skip("No inverse for BinerizedReward") +class TestClipTransform(TransformBase): + @pytest.mark.parametrize("rbclass", [ReplayBuffer, TensorDictReplayBuffer]) + def test_transform_rb(self, rbclass): + device = "cpu" + batch = [20] + torch.manual_seed(0) + rb = rbclass(storage=LazyTensorStorage(20)) + + t = Compose( + ClipTransform( + in_keys=["observation", "reward"], + out_keys=["obs_clip", "reward_clip"], + in_keys_inv=["input"], + out_keys_inv=["input_clip"], + low=-0.1, + high=0.1, + ) + ) + rb.append_transform(t) + data = TensorDict({"observation": 1, "reward": 2, "input": 3}, []) + rb.add(data) + sample = rb.sample(20) + + assert (sample["observation"] == 1).all() + assert (sample["obs_clip"] == 0.1).all() + assert (sample["reward"] == 2).all() + assert (sample["reward_clip"] == 0.1).all() + assert (sample["input"] == 3).all() + assert (sample["input_clip"] == 0.1).all() + + def test_single_trans_env_check(self): + env = ContinuousActionVecMockEnv() + env = TransformedEnv( + env, + ClipTransform( + in_keys=["observation", "reward"], + in_keys_inv=["observation_orig"], + low=-0.1, + high=0.1, + ), + ) + check_env_specs(env) + + def test_transform_compose(self): + t = Compose( + ClipTransform( + in_keys=["observation", "reward"], + out_keys=["obs_clip", "reward_clip"], + low=-0.1, + high=0.1, + ) + ) + data = TensorDict({"observation": 1, "reward": 2}, []) + data = t(data) + assert data["observation"] == 1 + assert data["obs_clip"] == 0.1 + assert data["reward"] == 2 + assert data["reward_clip"] == 0.1 + + def test_transform_env(self): + env = ContinuousActionVecMockEnv() + env = TransformedEnv( + env, + ClipTransform( + in_keys=["observation", "reward"], + in_keys_inv=["observation_orig"], + low=-0.1, + high=0.1, + ), + ) + r = env.rollout(3) + assert (r["observation"] <= 0.1).all() + assert (r["next", "observation"] <= 0.1).all() + assert (r["next", "reward"] <= 0.1).all() + assert (r["observation"] >= -0.1).all() + assert (r["next", "observation"] >= -0.1).all() + assert (r["next", "reward"] >= -0.1).all() + check_env_specs(env) + with pytest.raises( + TypeError, match="Either one or both of `high` and `low` must be provided" + ): + ClipTransform( + in_keys=["observation", "reward"], + in_keys_inv=["observation_orig"], + low=None, + high=None, + ) + with pytest.raises(TypeError, match="low and high must be scalars or None"): + ClipTransform( + in_keys=["observation", "reward"], + in_keys_inv=["observation_orig"], + low=torch.randn(2), + high=None, + ) + with pytest.raises(ValueError, match="`low` must be stricly lower than `high`"): + ClipTransform( + in_keys=["observation", "reward"], + in_keys_inv=["observation_orig"], + low=1.0, + high=-1.0, + ) + env = TransformedEnv( + env, + ClipTransform( + in_keys=["observation", "reward"], + in_keys_inv=["observation_orig"], + low=1.0, + high=None, + ), + ) + check_env_specs(env) + env = TransformedEnv( + env, + ClipTransform( + in_keys=["observation", "reward"], + in_keys_inv=["observation_orig"], + low=None, + high=1.0, + ), + ) + check_env_specs(env) + env = TransformedEnv( + env, + ClipTransform( + in_keys=["observation", "reward"], + in_keys_inv=["observation_orig"], + low=-1, + high=1, + ), + ) + check_env_specs(env) + + def test_transform_inverse(self): + t = ClipTransform( + in_keys_inv=["observation", "reward"], + out_keys_inv=["obs_clip", "reward_clip"], + low=-0.1, + high=0.1, + ) + data = TensorDict({"observation": 1, "reward": 2}, []) + data = t.inv(data) + assert data["observation"] == 1 + assert data["obs_clip"] == 0.1 + assert data["reward"] == 2 + assert data["reward_clip"] == 0.1 + + def test_transform_model(self): + t = nn.Sequential( + ClipTransform( + in_keys=["observation", "reward"], + out_keys=["obs_clip", "reward_clip"], + low=-0.1, + high=0.1, + ) + ) + data = TensorDict({"observation": 1, "reward": 2}, []) + data = t(data) + assert data["observation"] == 1 + assert data["obs_clip"] == 0.1 + assert data["reward"] == 2 + assert data["reward_clip"] == 0.1 + + def test_transform_no_env(self): + t = ClipTransform( + in_keys=["observation", "reward"], + out_keys=["obs_clip", "reward_clip"], + low=-0.1, + high=0.1, + ) + data = TensorDict({"observation": 1, "reward": 2}, []) + data = t(data) + assert data["observation"] == 1 + assert data["obs_clip"] == 0.1 + assert data["reward"] == 2 + assert data["reward_clip"] == 0.1 + + def test_parallel_trans_env_check(self): + def make_env(): + env = ContinuousActionVecMockEnv() + return TransformedEnv( + env, + ClipTransform( + in_keys=["observation", "reward"], + in_keys_inv=["observation_orig"], + low=-0.1, + high=0.1, + ), + ) + + env = ParallelEnv(2, make_env) + check_env_specs(env) + + def test_serial_trans_env_check(self): + def make_env(): + env = ContinuousActionVecMockEnv() + return TransformedEnv( + env, + ClipTransform( + in_keys=["observation", "reward"], + in_keys_inv=["observation_orig"], + low=-0.1, + high=0.1, + ), + ) + + env = SerialEnv(2, make_env) + check_env_specs(env) + + def test_trans_parallel_env_check(self): + env = ContinuousActionVecMockEnv() + env = TransformedEnv( + ParallelEnv(2, ContinuousActionVecMockEnv), + ClipTransform( + in_keys=["observation", "reward"], + in_keys_inv=["observation_orig"], + low=-0.1, + high=0.1, + ), + ) + check_env_specs(env) + + def test_trans_serial_env_check(self): + env = ContinuousActionVecMockEnv() + env = TransformedEnv( + SerialEnv(2, ContinuousActionVecMockEnv), + ClipTransform( + in_keys=["observation", "reward"], + in_keys_inv=["observation_orig"], + low=-0.1, + high=0.1, + ), + ) + check_env_specs(env) + + class TestCatFrames(TransformBase): @pytest.mark.parametrize("out_keys", [None, ["obs2"]]) def test_single_trans_env_check(self, out_keys): @@ -596,10 +832,10 @@ def test_catframes_transform_observation_spec(self): for key in keys: for i in range(N): assert torch.equal( - result[key].space.maximum[i], observation_spec[key].space.maximum[0] + result[key].space.high[i], observation_spec[key].space.high[0] ) assert torch.equal( - result[key].space.minimum[i], observation_spec[key].space.minimum[0] + result[key].space.low[i], observation_spec[key].space.low[0] ) @pytest.mark.parametrize("device", get_default_devices()) @@ -3535,13 +3771,11 @@ def test_observationnorm( observation_spec = on.transform_observation_spec(observation_spec) for key in keys: if standard_normal: - assert (observation_spec[key].space.minimum == -loc / scale).all() - assert ( - observation_spec[key].space.maximum == (1 - loc) / scale - ).all() + assert (observation_spec[key].space.low == -loc / scale).all() + assert (observation_spec[key].space.high == (1 - loc) / scale).all() else: - assert (observation_spec[key].space.minimum == loc).all() - assert (observation_spec[key].space.maximum == scale + loc).all() + assert (observation_spec[key].space.low == loc).all() + assert (observation_spec[key].space.high == scale + loc).all() @pytest.mark.parametrize("keys", [["observation"], ["observation", "next_pixel"]]) @pytest.mark.parametrize("size", [1, 3]) @@ -3555,15 +3789,13 @@ def make_env(): base_env = ContinuousActionVecMockEnv( observation_spec=CompositeSpec( observation=BoundedTensorSpec( - minimum=1, maximum=1, shape=torch.Size([size]) + low=1, high=1, shape=torch.Size([size]) ), observation_orig=BoundedTensorSpec( - minimum=1, maximum=1, shape=torch.Size([size]) + low=1, high=1, shape=torch.Size([size]) ), ), - action_spec=BoundedTensorSpec( - minimum=1, maximum=1, shape=torch.Size((size,)) - ), + action_spec=BoundedTensorSpec(low=1, high=1, shape=torch.Size((size,))), seed=0, ) base_env.out_key = "observation" @@ -5321,8 +5553,8 @@ def test_transform_no_env(self, keys, batch, device): ) for key in keys: assert observation_spec[key].shape == torch.Size([3, 16, 16]) - assert (observation_spec[key].space.minimum == 0).all() - assert (observation_spec[key].space.maximum == 1).all() + assert (observation_spec[key].space.low == 0).all() + assert (observation_spec[key].space.high == 1).all() @pytest.mark.parametrize("batch", [[], [1], [3, 2]]) @pytest.mark.parametrize( @@ -5370,8 +5602,8 @@ def test_transform_compose(self, keys, batch, device): ) for key in keys: assert observation_spec[key].shape == torch.Size([3, 16, 16]) - assert (observation_spec[key].space.minimum == 0).all() - assert (observation_spec[key].space.maximum == 1).all() + assert (observation_spec[key].space.low == 0).all() + assert (observation_spec[key].space.high == 1).all() @pytest.mark.parametrize("out_keys", [None, ["stuff"]]) def test_single_trans_env_check(self, out_keys): @@ -6928,7 +7160,7 @@ def test_added_transforms_are_in_eval_mode(): class TestTransformedEnv: def test_independent_obs_specs_from_shared_env(self): obs_spec = CompositeSpec( - observation=BoundedTensorSpec(minimum=0, maximum=10, shape=torch.Size((1,))) + observation=BoundedTensorSpec(low=0, high=10, shape=torch.Size((1,))) ) base_env = ContinuousActionVecMockEnv(observation_spec=obs_spec) t1 = TransformedEnv(base_env, transform=ObservationNorm(loc=3, scale=2)) @@ -6937,14 +7169,14 @@ def test_independent_obs_specs_from_shared_env(self): t1_obs_spec = t1.observation_spec t2_obs_spec = t2.observation_spec - assert t1_obs_spec["observation"].space.minimum == 3 - assert t1_obs_spec["observation"].space.maximum == 23 + assert t1_obs_spec["observation"].space.low == 3 + assert t1_obs_spec["observation"].space.high == 23 - assert t2_obs_spec["observation"].space.minimum == 1 - assert t2_obs_spec["observation"].space.maximum == 61 + assert t2_obs_spec["observation"].space.low == 1 + assert t2_obs_spec["observation"].space.high == 61 - assert base_env.observation_spec["observation"].space.minimum == 0 - assert base_env.observation_spec["observation"].space.maximum == 10 + assert base_env.observation_spec["observation"].space.low == 0 + assert base_env.observation_spec["observation"].space.high == 10 def test_independent_reward_specs_from_shared_env(self): reward_spec = UnboundedContinuousTensorSpec() diff --git a/torchrl/data/tensor_specs.py b/torchrl/data/tensor_specs.py index 227e9fd0128..a4aa0278c55 100644 --- a/torchrl/data/tensor_specs.py +++ b/torchrl/data/tensor_specs.py @@ -348,52 +348,78 @@ def clone(self) -> DiscreteBox: @dataclass(repr=False) class ContinuousBox(Box): - """A continuous box of values, in between a minimum and a maximum.""" + """A continuous box of values, in between a minimum (self.low) and a maximum (self.high).""" - _minimum: torch.Tensor - _maximum: torch.Tensor + _low: torch.Tensor + _high: torch.Tensor device: torch.device = None # We store the tensors on CPU to avoid overloading CUDA with tensors that are rarely used. + @property + def low(self): + return self._low.to(self.device) + + @property + def high(self): + return self._high.to(self.device) + + @low.setter + def low(self, value): + self.device = value.device + self._low = value.cpu() + + @high.setter + def high(self, value): + self.device = value.device + self._high = value.cpu() + @property def minimum(self): - return self._minimum.to(self.device) + warnings.warn( + f"{type(self)}.minimum is going to be deprecated in favour of {type(self)}.low", + category=DeprecationWarning, + ) + return self._low.to(self.device) @property def maximum(self): - return self._maximum.to(self.device) + warnings.warn( + f"{type(self)}.maximum is going to be deprecated in favour of {type(self)}.low", + category=DeprecationWarning, + ) + return self._high.to(self.device) - @minimum.setter - def minimum(self, value): + @low.setter + def low(self, value): self.device = value.device - self._minimum = value.cpu() + self._low = value.cpu() - @maximum.setter - def maximum(self, value): + @high.setter + def high(self, value): self.device = value.device - self._maximum = value.cpu() + self._high = value.cpu() def __post_init__(self): - self.minimum = self.minimum.clone() - self.maximum = self.maximum.clone() + self.low = self.low.clone() + self.high = self.high.clone() def __iter__(self): - yield self.minimum - yield self.maximum + yield self.low + yield self.high def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> ContinuousBox: - return self.__class__(self.minimum.to(dest), self.maximum.to(dest)) + return self.__class__(self.low.to(dest), self.high.to(dest)) def clone(self) -> ContinuousBox: - return self.__class__(self.minimum.clone(), self.maximum.clone()) + return self.__class__(self.low.clone(), self.high.clone()) def __repr__(self): min_str = indent( - f"\nminimum=Tensor(shape={self.minimum.shape}, device={self.minimum.device}, dtype={self.minimum.dtype}, contiguous={self.maximum.is_contiguous()})", + f"\nlow=Tensor(shape={self.low.shape}, device={self.low.device}, dtype={self.low.dtype}, contiguous={self.high.is_contiguous()})", " " * 4, ) max_str = indent( - f"\nmaximum=Tensor(shape={self.maximum.shape}, device={self.maximum.device}, dtype={self.maximum.dtype}, contiguous={self.maximum.is_contiguous()})", + f"\nhigh=Tensor(shape={self.high.shape}, device={self.high.device}, dtype={self.high.dtype}, contiguous={self.high.is_contiguous()})", " " * 4, ) return f"{self.__class__.__name__}({min_str},{max_str})" @@ -401,10 +427,10 @@ def __repr__(self): def __eq__(self, other): return ( type(self) == type(other) - and self.minimum.dtype == other.minimum.dtype - and self.maximum.dtype == other.maximum.dtype - and torch.equal(self.minimum, other.minimum) - and torch.equal(self.maximum, other.maximum) + and self.low.dtype == other.low.dtype + and self.high.dtype == other.high.dtype + and torch.equal(self.low, other.low) + and torch.equal(self.high, other.high) ) @@ -1409,41 +1435,62 @@ class BoundedTensorSpec(TensorSpec): """A bounded continuous tensor spec. Args: - minimum (np.ndarray, torch.Tensor or number): lower bound of the box. - maximum (np.ndarray, torch.Tensor or number): upper bound of the box. + low (np.ndarray, torch.Tensor or number): lower bound of the box. + high (np.ndarray, torch.Tensor or number): upper bound of the box. device (str, int or torch.device, optional): device of the tensors. dtype (str or torch.dtype, optional): dtype of the tensors. """ # SPEC_HANDLED_FUNCTIONS = {} + DEPRECATED_KWARGS = ( + "The `minimum` and `maximum` keyword arguments are now " + "deprecated in favour of `low` and `high`." + ) + CONFLICTING_KWARGS = ( + "The keyword arguments {} and {} conflict. Only one of these can be passed." + ) def __init__( self, - minimum: Union[float, torch.Tensor, np.ndarray], - maximum: Union[float, torch.Tensor, np.ndarray], + low: Union[float, torch.Tensor, np.ndarray] = None, + high: Union[float, torch.Tensor, np.ndarray] = None, shape: Optional[Union[torch.Size, int]] = None, device: Optional[DEVICE_TYPING] = None, dtype: Optional[Union[torch.dtype, str]] = None, + **kwargs, ): + if "maximum" in kwargs: + if high is not None: + raise TypeError(self.CONFLICTING_KWARGS.format("high", "maximum")) + high = kwargs.pop("maximum") + warnings.warn(self.DEPRECATED_KWARGS, category=DeprecationWarning) + if "minimum" in kwargs: + if low is not None: + raise TypeError(self.CONFLICTING_KWARGS.format("low", "minimum")) + low = kwargs.pop("minimum") + warnings.warn(self.DEPRECATED_KWARGS, category=DeprecationWarning) + if len(kwargs): + raise TypeError(f"Got unrecognised kwargs {tuple(kwargs.keys())}.") + dtype, device = _default_dtype_and_device(dtype, device) if dtype is None: dtype = torch.get_default_dtype() if device is None: device = torch._get_default_device() - if not isinstance(minimum, torch.Tensor): - minimum = torch.tensor(minimum, dtype=dtype, device=device) - if not isinstance(maximum, torch.Tensor): - maximum = torch.tensor(maximum, dtype=dtype, device=device) - if maximum.device != device: - maximum = maximum.to(device) - if minimum.device != device: - minimum = minimum.to(device) - if dtype is not None and minimum.dtype is not dtype: - minimum = minimum.to(dtype) - if dtype is not None and maximum.dtype is not dtype: - maximum = maximum.to(dtype) + if not isinstance(low, torch.Tensor): + low = torch.tensor(low, dtype=dtype, device=device) + if not isinstance(high, torch.Tensor): + high = torch.tensor(high, dtype=dtype, device=device) + if high.device != device: + high = high.to(device) + if low.device != device: + low = low.to(device) + if dtype is not None and low.dtype is not dtype: + low = low.to(dtype) + if dtype is not None and high.dtype is not dtype: + high = high.to(dtype) err_msg = ( "BoundedTensorSpec requires the shape to be explicitely (via " "the shape argument) or implicitely defined (via either the " @@ -1457,45 +1504,41 @@ def __init__( else: shape = torch.Size(list(shape)) - if maximum.ndimension(): - if shape is not None and shape != maximum.shape: + if high.ndimension(): + if shape is not None and shape != high.shape: raise RuntimeError(err_msg) - shape = maximum.shape - minimum = minimum.expand(shape).clone() - elif minimum.ndimension(): - if shape is not None and shape != minimum.shape: + shape = high.shape + low = low.expand(shape).clone() + elif low.ndimension(): + if shape is not None and shape != low.shape: raise RuntimeError(err_msg) - shape = minimum.shape - maximum = maximum.expand(shape).clone() + shape = low.shape + high = high.expand(shape).clone() elif shape is None: raise RuntimeError(err_msg) else: - minimum = minimum.expand(shape).clone() - maximum = maximum.expand(shape).clone() + low = low.expand(shape).clone() + high = high.expand(shape).clone() - if minimum.numel() > maximum.numel(): - maximum = maximum.expand_as(minimum).clone() - elif maximum.numel() > minimum.numel(): - minimum = minimum.expand_as(maximum).clone() + if low.numel() > high.numel(): + high = high.expand_as(low).clone() + elif high.numel() > low.numel(): + low = low.expand_as(high).clone() if shape is None: - shape = minimum.shape + shape = low.shape else: if isinstance(shape, float): shape = torch.Size([shape]) elif not isinstance(shape, torch.Size): shape = torch.Size(shape) - shape_err_msg = ( - f"minimum and shape mismatch, got {minimum.shape} and {shape}" - ) - if len(minimum.shape) != len(shape): + shape_err_msg = f"low and shape mismatch, got {low.shape} and {shape}" + if len(low.shape) != len(shape): raise RuntimeError(shape_err_msg) - if not all(_s == _sa for _s, _sa in zip(shape, minimum.shape)): + if not all(_s == _sa for _s, _sa in zip(shape, low.shape)): raise RuntimeError(shape_err_msg) self.shape = shape - super().__init__( - shape, ContinuousBox(minimum, maximum), device, dtype, "continuous" - ) + super().__init__(shape, ContinuousBox(low, high), device, dtype, "continuous") def expand(self, *shape): if len(shape) == 1 and isinstance(shape[0], (tuple, list, torch.Size)): @@ -1510,8 +1553,8 @@ def expand(self, *shape): f"shape of the {self.__class__.__name__} spec in expand()." ) return self.__class__( - minimum=self.space.minimum.expand(shape).clone(), - maximum=self.space.maximum.expand(shape).clone(), + low=self.space.low.expand(shape).clone(), + high=self.space.high.expand(shape).clone(), shape=shape, device=self.device, dtype=self.dtype, @@ -1523,15 +1566,15 @@ def squeeze(self, dim: int | None = None): return self if dim is None: - minimum = self.space.minimum.squeeze().clone() - maximum = self.space.maximum.squeeze().clone() + low = self.space.low.squeeze().clone() + high = self.space.high.squeeze().clone() else: - minimum = self.space.minimum.squeeze(dim).clone() - maximum = self.space.maximum.squeeze(dim).clone() + low = self.space.low.squeeze(dim).clone() + high = self.space.high.squeeze(dim).clone() return self.__class__( - minimum=minimum, - maximum=maximum, + low=low, + high=high, shape=shape, device=self.device, dtype=self.dtype, @@ -1540,8 +1583,8 @@ def squeeze(self, dim: int | None = None): def unsqueeze(self, dim: int): shape = _unsqueezed_shape(self.shape, dim) return self.__class__( - minimum=self.space.minimum.unsqueeze(dim).clone(), - maximum=self.space.maximum.unsqueeze(dim).clone(), + low=self.space.low.unsqueeze(dim).clone(), + high=self.space.high.unsqueeze(dim).clone(), shape=shape, device=self.device, dtype=self.dtype, @@ -1564,42 +1607,42 @@ def rand(self, shape=None) -> torch.Tensor: out[out < a] = a.expand_as(out)[out < a] return out else: - if self.space.maximum.dtype == torch.bool: - maxi = self.space.maximum.int() + if self.space.high.dtype == torch.bool: + maxi = self.space.high.int() else: - maxi = self.space.maximum - if self.space.minimum.dtype == torch.bool: - mini = self.space.minimum.int() + maxi = self.space.high + if self.space.low.dtype == torch.bool: + mini = self.space.low.int() else: - mini = self.space.minimum + mini = self.space.low interval = maxi - mini r = torch.rand(torch.Size([*shape, *self.shape]), device=interval.device) r = interval * r - r = self.space.minimum + r + r = self.space.low + r r = r.to(self.dtype).to(self.device) return r def _project(self, val: torch.Tensor) -> torch.Tensor: - minimum = self.space.minimum.to(val.device) - maximum = self.space.maximum.to(val.device) + low = self.space.low.to(val.device) + high = self.space.high.to(val.device) try: - val = val.clamp_(minimum.item(), maximum.item()) + val = val.clamp_(low.item(), high.item()) except ValueError: - minimum = minimum.expand_as(val) - maximum = maximum.expand_as(val) - val[val < minimum] = minimum[val < minimum] - val[val > maximum] = maximum[val > maximum] + low = low.expand_as(val) + high = high.expand_as(val) + val[val < low] = low[val < low] + val[val > high] = high[val > high] except RuntimeError: - minimum = minimum.expand_as(val) - maximum = maximum.expand_as(val) - val[val < minimum] = minimum[val < minimum] - val[val > maximum] = maximum[val > maximum] + low = low.expand_as(val) + high = high.expand_as(val) + val[val < low] = low[val < low] + val[val > high] = high[val > high] return val def is_in(self, val: torch.Tensor) -> bool: try: - return (val >= self.space.minimum.to(val.device)).all() and ( - val <= self.space.maximum.to(val.device) + return (val >= self.space.low.to(val.device)).all() and ( + val <= self.space.high.to(val.device) ).all() except RuntimeError as err: if "The size of tensor a" in str(err): @@ -1617,8 +1660,8 @@ def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> CompositeSpec: if dest_device == self.device and dest_dtype == self.dtype: return self return self.__class__( - minimum=self.space.minimum.to(dest), - maximum=self.space.maximum.to(dest), + low=self.space.low.to(dest), + high=self.space.high.to(dest), shape=self.shape, device=dest_device, dtype=dest_dtype, @@ -1626,8 +1669,8 @@ def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> CompositeSpec: def clone(self) -> BoundedTensorSpec: return self.__class__( - minimum=self.space.minimum.clone(), - maximum=self.space.maximum.clone(), + low=self.space.low.clone(), + high=self.space.high.clone(), shape=self.shape, device=self.device, dtype=self.dtype, @@ -1643,8 +1686,8 @@ def __getitem__(self, idx: SHAPE_INDEX_TYPING): indexed_shape = torch.Size(_shape_indexing(self.shape, idx)) # Expand is required as pytorch.tensor indexing return self.__class__( - minimum=self.space.minimum[idx].clone().expand(indexed_shape), - maximum=self.space.maximum[idx].clone().expand(indexed_shape), + low=self.space.low[idx].clone().expand(indexed_shape), + high=self.space.high[idx].clone().expand(indexed_shape), shape=indexed_shape, device=self.device, dtype=self.dtype, @@ -1805,10 +1848,10 @@ def clone(self) -> UnboundedDiscreteTensorSpec: def rand(self, shape=None) -> torch.Tensor: if shape is None: shape = torch.Size([]) - interval = self.space.maximum - self.space.minimum + interval = self.space.high - self.space.low r = torch.rand(torch.Size([*shape, *interval.shape]), device=interval.device) r = r * interval - r = self.space.minimum + r + r = self.space.low + r r = r.to(self.dtype) return r.to(self.device) diff --git a/torchrl/envs/__init__.py b/torchrl/envs/__init__.py index 21e7d5b62ad..1fb8f37a6ec 100644 --- a/torchrl/envs/__init__.py +++ b/torchrl/envs/__init__.py @@ -13,6 +13,7 @@ CatFrames, CatTensors, CenterCrop, + ClipTransform, Compose, DeviceCastTransform, DiscreteActionProjection, diff --git a/torchrl/envs/common.py b/torchrl/envs/common.py index 3754eee5646..ad6df69cf78 100644 --- a/torchrl/envs/common.py +++ b/torchrl/envs/common.py @@ -152,8 +152,8 @@ class EnvBase(nn.Module, metaclass=abc.ABCMeta): action: BoundedTensorSpec( shape=torch.Size([1]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous), device=cpu, shape=torch.Size([])), device=cpu, shape=torch.Size([])) @@ -161,8 +161,8 @@ class EnvBase(nn.Module, metaclass=abc.ABCMeta): BoundedTensorSpec( shape=torch.Size([1]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous) @@ -171,8 +171,8 @@ class EnvBase(nn.Module, metaclass=abc.ABCMeta): observation: BoundedTensorSpec( shape=torch.Size([3]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous), device=cpu, shape=torch.Size([])) @@ -204,8 +204,8 @@ class EnvBase(nn.Module, metaclass=abc.ABCMeta): observation: BoundedTensorSpec( shape=torch.Size([3]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous), device=cpu, shape=torch.Size([])), @@ -387,8 +387,8 @@ def input_spec(self) -> TensorSpec: action: BoundedTensorSpec( shape=torch.Size([1]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous), device=cpu, shape=torch.Size([])), device=cpu, shape=torch.Size([])) @@ -440,8 +440,8 @@ def output_spec(self) -> TensorSpec: observation: BoundedTensorSpec( shape=torch.Size([3]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous), device=cpu, shape=torch.Size([])), @@ -516,8 +516,8 @@ def action_spec(self) -> TensorSpec: UnboundedContinuousTensorSpec( shape=torch.Size([1]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous) @@ -530,8 +530,8 @@ def action_spec(self) -> TensorSpec: UnboundedContinuousTensorSpec( shape=torch.Size([1]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous) @@ -546,8 +546,8 @@ def action_spec(self) -> TensorSpec: action: UnboundedContinuousTensorSpec( shape=torch.Size([1]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous), @@ -571,8 +571,8 @@ def action_spec(self) -> TensorSpec: BoundedTensorSpec( shape=torch.Size([1]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous) @@ -683,8 +683,8 @@ def reward_spec(self) -> TensorSpec: UnboundedContinuousTensorSpec( shape=torch.Size([1]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous) @@ -697,8 +697,8 @@ def reward_spec(self) -> TensorSpec: UnboundedContinuousTensorSpec( shape=torch.Size([1]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous) @@ -713,8 +713,8 @@ def reward_spec(self) -> TensorSpec: reward: UnboundedContinuousTensorSpec( shape=torch.Size([1]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous), @@ -1021,8 +1021,8 @@ def observation_spec(self) -> CompositeSpec: observation: BoundedTensorSpec( shape=torch.Size([3]), space=ContinuousBox( - minimum=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True), - maximum=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True)), + low=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True), + high=Tensor(shape=torch.Size([3]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous), device=cpu, shape=torch.Size([])) diff --git a/torchrl/envs/libs/brax.py b/torchrl/envs/libs/brax.py index 0119a17daa4..6d64e90de47 100644 --- a/torchrl/envs/libs/brax.py +++ b/torchrl/envs/libs/brax.py @@ -123,8 +123,8 @@ def _make_state_spec(self, env: "brax.envs.env.Env"): def _make_specs(self, env: "brax.envs.env.Env") -> None: # noqa: F821 self.action_spec = BoundedTensorSpec( - minimum=-1, - maximum=1, + low=-1, + high=1, shape=( *self.batch_size, env.action_size, diff --git a/torchrl/envs/libs/dm_control.py b/torchrl/envs/libs/dm_control.py index 56bf48fa0ac..658e7bbd5d7 100644 --- a/torchrl/envs/libs/dm_control.py +++ b/torchrl/envs/libs/dm_control.py @@ -67,8 +67,8 @@ def _dmcontrol_to_torchrl_spec_transform( shape = torch.Size([1]) return BoundedTensorSpec( shape=shape, - minimum=spec.minimum, - maximum=spec.maximum, + low=spec.minimum, + high=spec.maximum, dtype=dtype, device=device, ) diff --git a/torchrl/envs/libs/jumanji.py b/torchrl/envs/libs/jumanji.py index d27663628b3..0559997212a 100644 --- a/torchrl/envs/libs/jumanji.py +++ b/torchrl/envs/libs/jumanji.py @@ -69,8 +69,8 @@ def _jumanji_to_torchrl_spec_transform( dtype = numpy_to_torch_dtype_dict[spec.dtype] return BoundedTensorSpec( shape=shape, - minimum=np.asarray(spec.minimum), - maximum=np.asarray(spec.maximum), + low=np.asarray(spec.minimum), + high=np.asarray(spec.maximum), dtype=dtype, device=device, ) diff --git a/torchrl/envs/transforms/__init__.py b/torchrl/envs/transforms/__init__.py index d304ce149e5..2a81878e13d 100644 --- a/torchrl/envs/transforms/__init__.py +++ b/torchrl/envs/transforms/__init__.py @@ -11,6 +11,7 @@ CatFrames, CatTensors, CenterCrop, + ClipTransform, Compose, DeviceCastTransform, DiscreteActionProjection, diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index 0372b680ab3..8644abc8cb9 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -13,6 +13,8 @@ from textwrap import indent from typing import Any, List, Optional, OrderedDict, Sequence, Tuple, Union +import numpy as np + import torch from tensordict import unravel_key, unravel_key_list @@ -253,11 +255,11 @@ def _step( next_tensordict = self._call(next_tensordict) return next_tensordict - def _inv_apply_transform(self, obs: torch.Tensor) -> torch.Tensor: + def _inv_apply_transform(self, state: torch.Tensor) -> torch.Tensor: if self.invertible: raise NotImplementedError else: - return obs + return state def _inv_call(self, tensordict: TensorDictBase) -> TensorDictBase: # # We create a shallow copy of the tensordict to avoid that changes are @@ -1088,11 +1090,129 @@ def _should_unsqueeze(self, observation_like: torch.FloatTensor | TensorSpec): def _pixel_observation(self, spec: TensorSpec) -> None: if isinstance(spec.space, ContinuousBox): - spec.space.maximum = self._apply_transform(spec.space.maximum) - spec.space.minimum = self._apply_transform(spec.space.minimum) + spec.space.high = self._apply_transform(spec.space.high) + spec.space.low = self._apply_transform(spec.space.low) return spec +class ClipTransform(Transform): + """A transform to clip input (state, action) or output (observation, reward) values. + + This transform can take multiple input or output keys but only one value per + transform. If multiple clipping values are needed, several transforms should + be appended one after the other. + + Args: + in_keys (list of NestedKeys): input entries (read) + out_keys (list of NestedKeys): input entries (write) + in_keys_inv (list of NestedKeys): input entries (read) during :meth:`~.inv` calls. + out_keys_inv (list of NestedKeys): input entries (write) during :meth:`~.inv` calls. + + Keyword Args: + low (scalar, optional): the lower bound of the clipped space. + high (scalar, optional): the higher bound of the clipped space. + + .. note:: Providing just one of the arguments ``low`` or ``high`` is permitted, + but at least one must be provided. + + Examples: + >>> from torchrl.envs.libs.gym import GymEnv + >>> base_env = GymEnv("Pendulum-v1") + >>> env = TransformedEnv(base_env, ClipTransform(in_keys=['observation'], low=-1, high=0.1)) + >>> r = env.rollout(100) + >>> assert (r["observation"] <= 0.1).all() + """ + + def __init__( + self, + in_keys=None, + out_keys=None, + in_keys_inv=None, + out_keys_inv=None, + *, + low=None, + high=None, + ): + if in_keys is None: + in_keys = [] + super().__init__(in_keys, out_keys, in_keys_inv, out_keys_inv) + if low is None and high is None: + raise TypeError("Either one or both of `high` and `low` must be provided.") + + def check_val(val): + if (isinstance(val, torch.Tensor) and val.numel() > 1) or ( + isinstance(val, np.ndarray) and val.size > 1 + ): + raise TypeError( + f"low and high must be scalars or None. Got low={low} and high={high}." + ) + if val is None: + return None, None, torch.finfo(torch.get_default_dtype()).max + if not isinstance(val, torch.Tensor): + val = torch.tensor(val) + if not val.dtype.is_floating_point: + val = val.float() + eps = torch.finfo(val.dtype).resolution + ext = torch.finfo(val.dtype).max + return val, eps, ext + + low, low_eps, low_min = check_val(low) + high, high_eps, high_max = check_val(high) + if low is not None and high is not None and low >= high: + raise ValueError("`low` must be stricly lower than `high`.") + self.low = low + self.low_eps = low_eps + self.low_min = -low_min + self.high = high + self.high_eps = high_eps + self.high_max = high_max + + def _apply_transform(self, obs: torch.Tensor) -> None: + if self.low is None: + return obs.clamp_max(self.high) + elif self.high is None: + return obs.clamp_min(self.low) + return obs.clamp(self.low, self.high) + + def _inv_apply_transform(self, state: torch.Tensor) -> torch.Tensor: + if self.low is None: + return state.clamp_max(self.high) + elif self.high is None: + return state.clamp_min(self.low) + return state.clamp(self.low, self.high) + + @_apply_to_composite + def transform_observation_spec(self, observation_spec: TensorSpec) -> TensorSpec: + return BoundedTensorSpec( + shape=observation_spec.shape, + device=observation_spec.device, + dtype=observation_spec.dtype, + high=self.high + self.high_eps if self.high is not None else self.high_max, + low=self.low - self.low_eps if self.low is not None else self.low_min, + ) + + def transform_reward_spec(self, reward_spec: TensorSpec) -> TensorSpec: + for key in self.in_keys: + if key in self.parent.reward_keys: + spec = self.parent.output_spec["full_reward_spec"][key] + self.parent.output_spec["full_reward_spec"][key] = BoundedTensorSpec( + shape=spec.shape, + device=spec.device, + dtype=spec.dtype, + high=self.high + self.high_eps + if self.high is not None + else self.high_max, + low=self.low - self.low_eps + if self.low is not None + else self.low_min, + ) + return self.parent.output_spec["full_reward_spec"] + + # No need to transform the input spec since the outside world won't see the difference + # def transform_input_spec(self, input_spec: TensorSpec) -> TensorSpec: + # ... + + class TargetReturn(Transform): """Sets a target return for the agent to achieve in the environment. @@ -1245,8 +1365,8 @@ def transform_observation_spec( ) for key in self.out_keys: target_return_spec = BoundedTensorSpec( - minimum=-float("inf"), - maximum=self.target_return, + low=-float("inf"), + high=self.target_return, shape=self.parent.reward_spec.shape, dtype=self.parent.reward_spec.dtype, device=self.parent.reward_spec.device, @@ -1397,9 +1517,9 @@ def _apply_transform(self, observation: torch.Tensor) -> torch.Tensor: def transform_observation_spec(self, observation_spec: TensorSpec) -> TensorSpec: space = observation_spec.space if isinstance(space, ContinuousBox): - space.minimum = self._apply_transform(space.minimum) - space.maximum = self._apply_transform(space.maximum) - observation_spec.shape = space.minimum.shape + space.low = self._apply_transform(space.low) + space.high = self._apply_transform(space.high) + observation_spec.shape = space.low.shape else: observation_spec.shape = self._apply_transform( torch.zeros(observation_spec.shape) @@ -1449,9 +1569,9 @@ def _apply_transform(self, observation: torch.Tensor) -> torch.Tensor: def transform_observation_spec(self, observation_spec: TensorSpec) -> TensorSpec: space = observation_spec.space if isinstance(space, ContinuousBox): - space.minimum = self._apply_transform(space.minimum) - space.maximum = self._apply_transform(space.maximum) - observation_spec.shape = space.minimum.shape + space.low = self._apply_transform(space.low) + space.high = self._apply_transform(space.high) + observation_spec.shape = space.low.shape else: observation_spec.shape = self._apply_transform( torch.zeros(observation_spec.shape) @@ -1528,9 +1648,9 @@ def transform_observation_spec(self, observation_spec: TensorSpec) -> TensorSpec space = observation_spec.space if isinstance(space, ContinuousBox): - space.minimum = self._apply_transform(space.minimum) - space.maximum = self._apply_transform(space.maximum) - observation_spec.shape = space.minimum.shape + space.low = self._apply_transform(space.low) + space.high = self._apply_transform(space.high) + observation_spec.shape = space.low.shape else: observation_spec.shape = self._apply_transform( torch.zeros(observation_spec.shape) @@ -1609,9 +1729,9 @@ def _inv_apply_transform(self, observation: torch.Tensor) -> torch.Tensor: def _transform_spec(self, spec: TensorSpec): space = spec.space if isinstance(space, ContinuousBox): - space.minimum = self._apply_transform(space.minimum) - space.maximum = self._apply_transform(space.maximum) - spec.shape = space.minimum.shape + space.low = self._apply_transform(space.low) + space.high = self._apply_transform(space.high) + spec.shape = space.low.shape else: spec.shape = self._apply_transform(torch.zeros(spec.shape)).shape return spec @@ -1619,9 +1739,9 @@ def _transform_spec(self, spec: TensorSpec): def _inv_transform_spec(self, spec: TensorSpec) -> None: space = spec.space if isinstance(space, ContinuousBox): - space.minimum = self._inv_apply_transform(space.minimum) - space.maximum = self._inv_apply_transform(space.maximum) - spec.shape = space.minimum.shape + space.low = self._inv_apply_transform(space.low) + space.high = self._inv_apply_transform(space.high) + spec.shape = space.low.shape else: spec.shape = self._inv_apply_transform(torch.zeros(spec.shape)).shape return spec @@ -1706,9 +1826,9 @@ def _apply_transform(self, observation: torch.Tensor) -> torch.Tensor: def transform_observation_spec(self, observation_spec: TensorSpec) -> TensorSpec: space = observation_spec.space if isinstance(space, ContinuousBox): - space.minimum = self._apply_transform(space.minimum) - space.maximum = self._apply_transform(space.maximum) - observation_spec.shape = space.minimum.shape + space.low = self._apply_transform(space.low) + space.high = self._apply_transform(space.high) + observation_spec.shape = space.low.shape else: observation_spec.shape = self._apply_transform( torch.zeros(observation_spec.shape) @@ -1948,7 +2068,7 @@ def _apply_transform(self, obs: torch.Tensor) -> torch.Tensor: loc = self.loc return obs * scale + loc - def _inv_apply_transform(self, obs: torch.Tensor) -> torch.Tensor: + def _inv_apply_transform(self, state: torch.Tensor) -> torch.Tensor: if self.loc is None or self.scale is None: raise RuntimeError( "Loc/Scale have not been initialized. Either pass in values in the constructor " @@ -1957,26 +2077,26 @@ def _inv_apply_transform(self, obs: torch.Tensor) -> torch.Tensor: if not self.standard_normal: loc = self.loc scale = self.scale - return (obs - loc) / scale + return (state - loc) / scale else: scale = self.scale loc = self.loc - return obs * scale + loc + return state * scale + loc @_apply_to_composite def transform_observation_spec(self, observation_spec: TensorSpec) -> TensorSpec: space = observation_spec.space if isinstance(space, ContinuousBox): - space.minimum = self._apply_transform(space.minimum) - space.maximum = self._apply_transform(space.maximum) + space.low = self._apply_transform(space.low) + space.high = self._apply_transform(space.high) return observation_spec @_apply_to_composite_inv def transform_input_spec(self, input_spec: TensorSpec) -> TensorSpec: space = input_spec.space if isinstance(space, ContinuousBox): - space.minimum = self._apply_transform(space.minimum) - space.maximum = self._apply_transform(space.maximum) + space.low = self._apply_transform(space.low) + space.high = self._apply_transform(space.high) return input_spec def __repr__(self) -> str: @@ -2206,9 +2326,9 @@ def _call(self, tensordict: TensorDictBase) -> TensorDictBase: def transform_observation_spec(self, observation_spec: TensorSpec) -> TensorSpec: space = observation_spec.space if isinstance(space, ContinuousBox): - space.minimum = torch.cat([space.minimum] * self.N, self.dim) - space.maximum = torch.cat([space.maximum] * self.N, self.dim) - observation_spec.shape = space.minimum.shape + space.low = torch.cat([space.low] * self.N, self.dim) + space.high = torch.cat([space.high] * self.N, self.dim) + observation_spec.shape = space.low.shape else: shape = list(observation_spec.shape) shape[self.dim] = self.N * shape[self.dim] @@ -2588,8 +2708,8 @@ def _inv_call(self, tensordict: TensorDictBase) -> TensorDictBase: def _apply_transform(self, obs: torch.Tensor) -> torch.Tensor: return obs.to(self.dtype_out) - def _inv_apply_transform(self, obs: torch.Tensor) -> torch.Tensor: - return obs.to(self.dtype_in) + def _inv_apply_transform(self, state: torch.Tensor) -> torch.Tensor: + return state.to(self.dtype_in) def _transform_spec(self, spec: TensorSpec) -> None: if isinstance(spec, CompositeSpec): @@ -2599,8 +2719,8 @@ def _transform_spec(self, spec: TensorSpec) -> None: spec.dtype = self.dtype_out space = spec.space if isinstance(space, ContinuousBox): - space.minimum = space.minimum.to(self.dtype_out) - space.maximum = space.maximum.to(self.dtype_out) + space.low = space.low.to(self.dtype_out) + space.high = space.high.to(self.dtype_out) def transform_input_spec(self, input_spec: TensorSpec) -> TensorSpec: if self._keys_inv_unset: @@ -4057,8 +4177,8 @@ def transform_observation_spec( dtype=torch.int64, device=observation_spec.device, ) - observation_spec[self.step_count_key].space.minimum = ( - observation_spec[self.step_count_key].space.minimum * 0 + observation_spec[self.step_count_key].space.low = ( + observation_spec[self.step_count_key].space.low * 0 ) if self.max_steps is not None and self.truncated_key != self.parent.done_key: observation_spec[self.truncated_key] = self.parent.done_spec.clone() @@ -4078,7 +4198,7 @@ def transform_input_spec(self, input_spec: CompositeSpec) -> CompositeSpec: dtype=torch.int64, device=input_spec.device, ) - step_spec.space.minimum *= 0 + step_spec.space.low *= 0 input_spec["full_state_spec", self.step_count_key] = step_spec return input_spec diff --git a/torchrl/envs/utils.py b/torchrl/envs/utils.py index 784c9ea955f..ca80c0c2189 100644 --- a/torchrl/envs/utils.py +++ b/torchrl/envs/utils.py @@ -558,7 +558,7 @@ def make_composite_from_td(data): obs: UnboundedContinuousTensorSpec( shape=torch.Size([3]), space=None, device=cpu, dtype=torch.float32, domain=continuous), reward: UnboundedContinuousTensorSpec( - shape=torch.Size([1]), space=ContinuousBox(minimum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), maximum=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous), device=cpu, shape=torch.Size([])), device=cpu, shape=torch.Size([])) + shape=torch.Size([1]), space=ContinuousBox(low=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True), high=Tensor(shape=torch.Size([]), device=cpu, dtype=torch.float32, contiguous=True)), device=cpu, dtype=torch.float32, domain=continuous), device=cpu, shape=torch.Size([])), device=cpu, shape=torch.Size([])) >>> assert (spec.zero() == data.zero_()).all() """ from torchrl.data import CompositeSpec, UnboundedContinuousTensorSpec diff --git a/torchrl/modules/tensordict_module/actors.py b/torchrl/modules/tensordict_module/actors.py index 7606836caa0..939b4079287 100644 --- a/torchrl/modules/tensordict_module/actors.py +++ b/torchrl/modules/tensordict_module/actors.py @@ -188,7 +188,7 @@ class ProbabilisticActor(SafeProbabilisticTensorDictSequential): >>> from torchrl.modules import ProbabilisticActor, NormalParamWrapper, TanhNormal >>> td = TensorDict({"observation": torch.randn(3, 4)}, [3,]) >>> action_spec = BoundedTensorSpec(shape=torch.Size([4]), - ... minimum=-1, maximum=1) + ... low=-1, high=1) >>> module = NormalParamWrapper(torch.nn.Linear(4, 8)) >>> tensordict_module = TensorDictModule(module, in_keys=["observation"], out_keys=["loc", "scale"]) >>> td_module = ProbabilisticActor( @@ -1956,22 +1956,22 @@ def _make_low_high(self, low, high, leaf_spec): if low is None and leaf_spec is None: low = -torch.ones(()) elif low is None: - low = leaf_spec.space.minimum + low = leaf_spec.space.low elif leaf_spec is not None: - if (low != leaf_spec.space.minimum).any(): + if (low != leaf_spec.space.low).any(): raise ValueError( - f"The minimum value ({low}) provided to {type(self)} does not match the action spec one ({leaf_spec.space.minimum})." + f"The minimum value ({low}) provided to {type(self)} does not match the action spec one ({leaf_spec.space.low})." ) if not isinstance(low, torch.Tensor): low = torch.tensor(low) if high is None and leaf_spec is None: high = torch.ones(()) elif high is None: - high = leaf_spec.space.maximum + high = leaf_spec.space.high elif leaf_spec is not None: - if (high != leaf_spec.space.maximum).any(): + if (high != leaf_spec.space.high).any(): raise ValueError( - f"The maximum value ({high}) provided to {type(self)} does not match the action spec one ({leaf_spec.space.maximum})." + f"The maximum value ({high}) provided to {type(self)} does not match the action spec one ({leaf_spec.space.high})." ) if not isinstance(high, torch.Tensor): high = torch.tensor(high) diff --git a/torchrl/objectives/td3.py b/torchrl/objectives/td3.py index 62f0e793f29..cebdeb2e669 100644 --- a/torchrl/objectives/td3.py +++ b/torchrl/objectives/td3.py @@ -275,8 +275,8 @@ def __init__( raise ValueError( f"action_spec is not of type BoundedTensorSpec but {type(action_spec)}." ) - low = action_spec.space.minimum - high = action_spec.space.maximum + low = action_spec.space.low + high = action_spec.space.high else: low, high = bounds if not isinstance(low, torch.Tensor): diff --git a/torchrl/trainers/helpers/models.py b/torchrl/trainers/helpers/models.py index d0f587e4a98..110902cf96b 100644 --- a/torchrl/trainers/helpers/models.py +++ b/torchrl/trainers/helpers/models.py @@ -375,8 +375,8 @@ def make_redq_model( dist_class = TanhNormal dist_kwargs = { - "min": action_spec.space.minimum, - "max": action_spec.space.maximum, + "min": action_spec.space.low, + "max": action_spec.space.high, "tanh_loc": tanh_loc, } @@ -400,8 +400,8 @@ def make_redq_model( ) if action_spec.domain == "continuous": - min = action_spec.space.minimum - max = action_spec.space.maximum + min = action_spec.space.low + max = action_spec.space.high transform = SafeTanhTransform() if (min != -1).any() or (max != 1).any(): transform = d.ComposeTransform( diff --git a/tutorials/sphinx-tutorials/multiagent_ppo.py b/tutorials/sphinx-tutorials/multiagent_ppo.py index 32755b6b807..c84be33a84e 100644 --- a/tutorials/sphinx-tutorials/multiagent_ppo.py +++ b/tutorials/sphinx-tutorials/multiagent_ppo.py @@ -461,8 +461,8 @@ out_keys=[env.action_key], distribution_class=TanhNormal, distribution_kwargs={ - "min": env.unbatched_action_spec[env.action_key].space.minimum, - "max": env.unbatched_action_spec[env.action_key].space.maximum, + "min": env.unbatched_action_spec[env.action_key].space.low, + "max": env.unbatched_action_spec[env.action_key].space.high, }, return_log_prob=True, log_prob_key=("agents", "sample_log_prob"), diff --git a/tutorials/sphinx-tutorials/pendulum.py b/tutorials/sphinx-tutorials/pendulum.py index e623bc90df4..4fa160ff12f 100644 --- a/tutorials/sphinx-tutorials/pendulum.py +++ b/tutorials/sphinx-tutorials/pendulum.py @@ -386,14 +386,14 @@ def _make_spec(self, td_params): # Under the hood, this will populate self.output_spec["observation"] self.observation_spec = CompositeSpec( th=BoundedTensorSpec( - minimum=-torch.pi, - maximum=torch.pi, + low=-torch.pi, + high=torch.pi, shape=(), dtype=torch.float32, ), thdot=BoundedTensorSpec( - minimum=-td_params["params", "max_speed"], - maximum=td_params["params", "max_speed"], + low=-td_params["params", "max_speed"], + high=td_params["params", "max_speed"], shape=(), dtype=torch.float32, ), @@ -408,8 +408,8 @@ def _make_spec(self, td_params): # action-spec will be automatically wrapped in input_spec when # `self.action_spec = spec` will be called supported self.action_spec = BoundedTensorSpec( - minimum=-td_params["params", "max_torque"], - maximum=td_params["params", "max_torque"], + low=-td_params["params", "max_torque"], + high=td_params["params", "max_torque"], shape=(1,), dtype=torch.float32, ) @@ -658,8 +658,8 @@ def _apply_transform(self, obs: torch.Tensor) -> None: @_apply_to_composite def transform_observation_spec(self, observation_spec): return BoundedTensorSpec( - minimum=-1, - maximum=1, + low=-1, + high=1, shape=observation_spec.shape, dtype=observation_spec.dtype, device=observation_spec.device, @@ -676,8 +676,8 @@ def _apply_transform(self, obs: torch.Tensor) -> None: @_apply_to_composite def transform_observation_spec(self, observation_spec): return BoundedTensorSpec( - minimum=-1, - maximum=1, + low=-1, + high=1, shape=observation_spec.shape, dtype=observation_spec.dtype, device=observation_spec.device, From 3cc870abddff2ddbe72d9cacd04ba4d4f1b538ca Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Thu, 7 Sep 2023 15:46:22 +0100 Subject: [PATCH 070/148] [BugFix] Multiagent "auto" entropy fix in SAC (#1494) Signed-off-by: Matteo Bettini Co-authored-by: Vincent Moens --- examples/multiagent/sac.py | 5 ++++- torchrl/objectives/cql.py | 13 ++++++++++++- torchrl/objectives/decision_transformer.py | 17 ++++++++++++++--- torchrl/objectives/redq.py | 14 ++++++++++++-- torchrl/objectives/sac.py | 16 +++++++++++++--- torchrl/objectives/td3.py | 13 ++++++++++++- 6 files changed, 67 insertions(+), 11 deletions(-) diff --git a/examples/multiagent/sac.py b/examples/multiagent/sac.py index 72e45b05a1e..e9aea20e282 100644 --- a/examples/multiagent/sac.py +++ b/examples/multiagent/sac.py @@ -189,7 +189,10 @@ def train(cfg: "DictConfig"): # noqa: F821 if cfg.env.continuous_actions: loss_module = SACLoss( - actor_network=policy, qvalue_network=value_module, delay_qvalue=True + actor_network=policy, + qvalue_network=value_module, + delay_qvalue=True, + action_spec=env.unbatched_action_spec, ) loss_module.set_keys( state_action_value=("agents", "state_action_value"), diff --git a/torchrl/objectives/cql.py b/torchrl/objectives/cql.py index 06e8de28bf7..b24d4498106 100644 --- a/torchrl/objectives/cql.py +++ b/torchrl/objectives/cql.py @@ -366,8 +366,19 @@ def target_entropy(self): ) if not isinstance(action_spec, CompositeSpec): action_spec = CompositeSpec({self.tensor_keys.action: action_spec}) + if ( + isinstance(self.tensor_keys.action, tuple) + and len(self.tensor_keys.action) > 1 + ): + action_container_shape = action_spec[ + self.tensor_keys.action[:-1] + ].shape + else: + action_container_shape = action_spec.shape target_entropy = -float( - np.prod(action_spec[self.tensor_keys.action].shape) + action_spec[self.tensor_keys.action] + .shape[len(action_container_shape) :] + .numel() ) self.register_buffer( "target_entropy_buffer", torch.tensor(target_entropy, device=device) diff --git a/torchrl/objectives/decision_transformer.py b/torchrl/objectives/decision_transformer.py index 768e05de9c6..24f6c184d7d 100644 --- a/torchrl/objectives/decision_transformer.py +++ b/torchrl/objectives/decision_transformer.py @@ -7,8 +7,6 @@ from dataclasses import dataclass from typing import Union -import numpy as np - import torch from tensordict.nn import dispatch from tensordict.tensordict import TensorDict, TensorDictBase @@ -127,7 +125,20 @@ def __init__( "the target entropy explicitely or provide the spec of the " "action tensor in the actor network." ) - target_entropy = -float(np.prod(actor_network.spec["action"].shape)) + if ( + isinstance(self.tensor_keys.action, tuple) + and len(self.tensor_keys.action) > 1 + ): + action_container_shape = actor_network.spec[ + self.tensor_keys.action[:-1] + ].shape + else: + action_container_shape = actor_network.spec.shape + target_entropy = -float( + actor_network.spec[self.tensor_keys.action] + .shape[len(action_container_shape) :] + .numel() + ) self.register_buffer( "target_entropy", torch.tensor(target_entropy, device=device) ) diff --git a/torchrl/objectives/redq.py b/torchrl/objectives/redq.py index 039b5c65b9d..afafcbfd446 100644 --- a/torchrl/objectives/redq.py +++ b/torchrl/objectives/redq.py @@ -8,7 +8,6 @@ from numbers import Number from typing import Union -import numpy as np import torch from tensordict.nn import dispatch, TensorDictModule, TensorDictSequential @@ -352,8 +351,19 @@ def target_entropy(self): ) if not isinstance(action_spec, CompositeSpec): action_spec = CompositeSpec({self.tensor_keys.action: action_spec}) + if ( + isinstance(self.tensor_keys.action, tuple) + and len(self.tensor_keys.action) > 1 + ): + action_container_shape = action_spec[ + self.tensor_keys.action[:-1] + ].shape + else: + action_container_shape = action_spec.shape target_entropy = -float( - np.prod(action_spec[self.tensor_keys.action].shape) + action_spec[self.tensor_keys.action] + .shape[len(action_container_shape) :] + .numel() ) self.register_buffer( "target_entropy_buffer", torch.tensor(target_entropy, device=device) diff --git a/torchrl/objectives/sac.py b/torchrl/objectives/sac.py index a1ebf0e5873..a82795ab1bb 100644 --- a/torchrl/objectives/sac.py +++ b/torchrl/objectives/sac.py @@ -10,15 +10,14 @@ import numpy as np import torch + from tensordict.nn import dispatch, make_functional, TensorDictModule from tensordict.tensordict import TensorDict, TensorDictBase from tensordict.utils import NestedKey from torch import Tensor - from torchrl.data import CompositeSpec, TensorSpec from torchrl.data.utils import _find_action_space from torchrl.envs.utils import ExplorationType, set_exploration_type - from torchrl.modules import ProbabilisticActor from torchrl.modules.tensordict_module.actors import ActorCriticWrapper from torchrl.objectives.common import LossModule @@ -401,8 +400,19 @@ def target_entropy(self): ) if not isinstance(action_spec, CompositeSpec): action_spec = CompositeSpec({self.tensor_keys.action: action_spec}) + if ( + isinstance(self.tensor_keys.action, tuple) + and len(self.tensor_keys.action) > 1 + ): + action_container_shape = action_spec[ + self.tensor_keys.action[:-1] + ].shape + else: + action_container_shape = action_spec.shape target_entropy = -float( - np.prod(action_spec[self.tensor_keys.action].shape) + action_spec[self.tensor_keys.action].shape[ + len(action_container_shape) : + ].numel() ) self.register_buffer( "target_entropy_buffer", torch.tensor(target_entropy, device=device) diff --git a/torchrl/objectives/td3.py b/torchrl/objectives/td3.py index cebdeb2e669..68d63fbaa47 100644 --- a/torchrl/objectives/td3.py +++ b/torchrl/objectives/td3.py @@ -270,7 +270,18 @@ def __init__( ) elif action_spec is not None: if isinstance(action_spec, CompositeSpec): - action_spec = action_spec[self.tensor_keys.action] + if ( + isinstance(self.tensor_keys.action, tuple) + and len(self.tensor_keys.action) > 1 + ): + action_container_shape = action_spec[ + self.tensor_keys.action[:-1] + ].shape + else: + action_container_shape = action_spec.shape + action_spec = action_spec[self.tensor_keys.action][ + (0,) * len(action_container_shape) + ] if not isinstance(action_spec, BoundedTensorSpec): raise ValueError( f"action_spec is not of type BoundedTensorSpec but {type(action_spec)}." From 97d19f3f1b9d5e61ff86b8b6061ff322972b496e Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Thu, 7 Sep 2023 16:11:20 +0100 Subject: [PATCH 071/148] [Minor] More efficient SAC v1 (#1507) --- torchrl/objectives/sac.py | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/torchrl/objectives/sac.py b/torchrl/objectives/sac.py index a82795ab1bb..de4908d1335 100644 --- a/torchrl/objectives/sac.py +++ b/torchrl/objectives/sac.py @@ -410,9 +410,9 @@ def target_entropy(self): else: action_container_shape = action_spec.shape target_entropy = -float( - action_spec[self.tensor_keys.action].shape[ - len(action_container_shape) : - ].numel() + action_spec[self.tensor_keys.action] + .shape[len(action_container_shape) :] + .numel() ) self.register_buffer( "target_entropy_buffer", torch.tensor(target_entropy, device=device) @@ -619,24 +619,23 @@ def _qvalue_v1_loss( f"Batch size={tensordict.shape} is incompatible " f"with num_qvqlue_nets={self.num_qvalue_nets}." ) - tensordict_chunks = torch.stack( - tensordict.chunk(self.num_qvalue_nets, dim=0), 0 + tensordict_chunks = tensordict.reshape( + self.num_qvalue_nets, -1, *tensordict.shape[1:] + ) + target_chunks = target_value.reshape( + self.num_qvalue_nets, -1, *target_value.shape[1:] ) - target_chunks = torch.stack(target_value.chunk(self.num_qvalue_nets, dim=0), 0) # if vmap=True, it is assumed that the input tensordict must be cast to the param shape tensordict_chunks = self._vmap_qnetwork00( tensordict_chunks, self.qvalue_network_params ) - pred_val = tensordict_chunks.get(self.tensor_keys.state_action_value).squeeze( - -1 - ) + pred_val = tensordict_chunks.get(self.tensor_keys.state_action_value) + pred_val = pred_val.squeeze(-1) loss_value = distance_loss( pred_val, target_chunks, loss_function=self.loss_function ).view(*shape) - metadata = { - "td_error": torch.cat((pred_val - target_chunks).pow(2).unbind(0), 0) - } + metadata = {"td_error": (pred_val - target_chunks).pow(2).flatten(0, 1)} return loss_value, metadata From e539346a206a4dfec8a585a2488b3ced3fb8a858 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Thu, 7 Sep 2023 16:42:00 +0100 Subject: [PATCH 072/148] [BugFix] Fix ClipTransform device (#1508) --- test/test_transforms.py | 24 ++++++++++++++++++------ torchrl/envs/transforms/transforms.py | 4 ++-- 2 files changed, 20 insertions(+), 8 deletions(-) diff --git a/test/test_transforms.py b/test/test_transforms.py index fc2b74676c7..5c736dcedf0 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -383,10 +383,11 @@ def test_transform_compose(self): assert data["reward"] == 2 assert data["reward_clip"] == 0.1 - def test_transform_env(self): - env = ContinuousActionVecMockEnv() + @pytest.mark.parametrize("device", get_default_devices()) + def test_transform_env(self, device): + base_env = ContinuousActionVecMockEnv(device=device) env = TransformedEnv( - env, + base_env, ClipTransform( in_keys=["observation", "reward"], in_keys_inv=["observation_orig"], @@ -395,6 +396,7 @@ def test_transform_env(self): ), ) r = env.rollout(3) + assert r.device == device assert (r["observation"] <= 0.1).all() assert (r["next", "observation"] <= 0.1).all() assert (r["next", "reward"] <= 0.1).all() @@ -426,7 +428,7 @@ def test_transform_env(self): high=-1.0, ) env = TransformedEnv( - env, + base_env, ClipTransform( in_keys=["observation", "reward"], in_keys_inv=["observation_orig"], @@ -436,7 +438,7 @@ def test_transform_env(self): ) check_env_specs(env) env = TransformedEnv( - env, + base_env, ClipTransform( in_keys=["observation", "reward"], in_keys_inv=["observation_orig"], @@ -446,7 +448,7 @@ def test_transform_env(self): ) check_env_specs(env) env = TransformedEnv( - env, + base_env, ClipTransform( in_keys=["observation", "reward"], in_keys_inv=["observation_orig"], @@ -455,6 +457,16 @@ def test_transform_env(self): ), ) check_env_specs(env) + env = TransformedEnv( + base_env, + ClipTransform( + in_keys=["observation", "reward"], + in_keys_inv=["observation_orig"], + low=-torch.ones(()), + high=1, + ), + ) + check_env_specs(env) def test_transform_inverse(self): t = ClipTransform( diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index 8644abc8cb9..7ddb44b584e 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -1160,10 +1160,10 @@ def check_val(val): high, high_eps, high_max = check_val(high) if low is not None and high is not None and low >= high: raise ValueError("`low` must be stricly lower than `high`.") - self.low = low + self.register_buffer("low", low) self.low_eps = low_eps self.low_min = -low_min - self.high = high + self.register_buffer("high", high) self.high_eps = high_eps self.high_max = high_max From 3e1d382130a8f3f4cd6f7fce58af85f7aba024c7 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 8 Sep 2023 04:48:15 +0100 Subject: [PATCH 073/148] [CI] Move linux stable to GHA (#1503) --- .circleci/unittest/linux/scripts/run_all.sh | 17 +++++-- .github/workflows/test-linux-cpu.yml | 1 + .github/workflows/test-linux-gpu.yml | 1 + .github/workflows/test-linux-stable-gpu.yml | 50 +++++++++++++++++++++ .github/workflows/test-macos-cpu.yml | 1 + 5 files changed, 67 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/test-linux-stable-gpu.yml diff --git a/.circleci/unittest/linux/scripts/run_all.sh b/.circleci/unittest/linux/scripts/run_all.sh index f62562d4715..43edc768011 100755 --- a/.circleci/unittest/linux/scripts/run_all.sh +++ b/.circleci/unittest/linux/scripts/run_all.sh @@ -122,10 +122,21 @@ fi git submodule sync && git submodule update --init --recursive printf "Installing PyTorch with %s\n" "${CU_VERSION}" -if [ "${CU_VERSION:-}" == cpu ] ; then - pip3 install --pre torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/nightly/cpu +if [[ "$TORCH_VERSION" == "nightly" ]]; then + if [ "${CU_VERSION:-}" == cpu ] ; then + pip3 install --pre torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/nightly/cpu + else + pip3 install --pre torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/nightly/$CU_VERSION + fi +elif [[ "$TORCH_VERSION" == "stable" ]]; then + if [ "${CU_VERSION:-}" == cpu ] ; then + pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu + else + pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/$CU_VERSION + fi else - pip3 install --pre torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/nightly/$CU_VERSION + printf "Failed to install pytorch" + exit 1 fi # smoke test diff --git a/.github/workflows/test-linux-cpu.yml b/.github/workflows/test-linux-cpu.yml index d97d7807a59..f3490ee474b 100644 --- a/.github/workflows/test-linux-cpu.yml +++ b/.github/workflows/test-linux-cpu.yml @@ -34,6 +34,7 @@ jobs: # Set env vars from matrix export PYTHON_VERSION=${{ matrix.python_version }} export CU_VERSION="cpu" + export TORCH_VERSION=nightly echo "PYTHON_VERSION: $PYTHON_VERSION" echo "CU_VERSION: $CU_VERSION" diff --git a/.github/workflows/test-linux-gpu.yml b/.github/workflows/test-linux-gpu.yml index d576f813e4c..b5e1577d65f 100644 --- a/.github/workflows/test-linux-gpu.yml +++ b/.github/workflows/test-linux-gpu.yml @@ -39,6 +39,7 @@ jobs: # Commenting these out for now because the GPU test are not working inside docker export CUDA_ARCH_VERSION=${{ matrix.cuda_arch_version }} export CU_VERSION="cu${CUDA_ARCH_VERSION:0:2}${CUDA_ARCH_VERSION:3:1}" + export TORCH_VERSION=nightly # Remove the following line when the GPU tests are working inside docker, and uncomment the above lines #export CU_VERSION="cpu" diff --git a/.github/workflows/test-linux-stable-gpu.yml b/.github/workflows/test-linux-stable-gpu.yml new file mode 100644 index 00000000000..cf2681b10ff --- /dev/null +++ b/.github/workflows/test-linux-stable-gpu.yml @@ -0,0 +1,50 @@ +name: Unit-tests on Linux GPU, latest stable release + +on: + pull_request: + push: + branches: + - nightly + - main + - release/* + workflow_dispatch: + +env: + CHANNEL: "nightly" + +concurrency: + # Documentation suggests ${{ github.head_ref }}, but that's only available on pull_request/pull_request_target triggers, so using ${{ github.ref }}. + # On master, we want all builds to complete even if merging happens faster to make it easier to discover at which point something broke. + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && format('ci-master-{0}', github.sha) || format('ci-{0}', github.ref) }} + cancel-in-progress: true + +jobs: + tests: + strategy: + matrix: + python_version: ["3.9"] # "3.8", "3.9", "3.10", "3.11" + cuda_arch_version: ["11.8"] # "11.6", "11.7" + fail-fast: false + uses: pytorch/test-infra/.github/workflows/linux_job.yml@main + with: + runner: linux.g5.4xlarge.nvidia.gpu + repository: pytorch/rl + docker-image: "nvidia/cuda:12.1.0-devel-ubuntu22.04" + gpu-arch-type: cuda + gpu-arch-version: ${{ matrix.cuda_arch_version }} + timeout: 90 + script: | + # Set env vars from matrix + export PYTHON_VERSION=${{ matrix.python_version }} + # Commenting these out for now because the GPU test are not working inside docker + export CUDA_ARCH_VERSION=${{ matrix.cuda_arch_version }} + export CU_VERSION="cu${CUDA_ARCH_VERSION:0:2}${CUDA_ARCH_VERSION:3:1}" + export TORCH_VERSION=stable + # Remove the following line when the GPU tests are working inside docker, and uncomment the above lines + #export CU_VERSION="cpu" + + echo "PYTHON_VERSION: $PYTHON_VERSION" + echo "CU_VERSION: $CU_VERSION" + + ## setup_env.sh + bash .circleci/unittest/linux/scripts/run_all.sh diff --git a/.github/workflows/test-macos-cpu.yml b/.github/workflows/test-macos-cpu.yml index c802ca86f19..278125230cf 100644 --- a/.github/workflows/test-macos-cpu.yml +++ b/.github/workflows/test-macos-cpu.yml @@ -33,6 +33,7 @@ jobs: export PYTHON_VERSION=${{ matrix.python_version }} export CU_VERSION="cpu" export SYSTEM_VERSION_COMPAT=0 + export TORCH_VERSION=nightly echo "PYTHON_VERSION: $PYTHON_VERSION" echo "CU_VERSION: $CU_VERSION" From 0e23485a402e6a585bca9795d9730724cd9d8f90 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Fri, 8 Sep 2023 09:22:33 +0100 Subject: [PATCH 074/148] [BugFix] Add `torch.no_grad()` for rendering in multiagent PPO tutorial (#1511) Signed-off-by: Matteo Bettini --- tutorials/sphinx-tutorials/multiagent_ppo.py | 30 +++++++++++--------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/tutorials/sphinx-tutorials/multiagent_ppo.py b/tutorials/sphinx-tutorials/multiagent_ppo.py index c84be33a84e..4d35b18a360 100644 --- a/tutorials/sphinx-tutorials/multiagent_ppo.py +++ b/tutorials/sphinx-tutorials/multiagent_ppo.py @@ -718,13 +718,14 @@ # # .. code-block:: python # -# env.rollout( -# max_steps=max_steps, -# policy=policy, -# callback=lambda env, _: env.render(), -# auto_cast_to_device=True, -# break_when_any_done=False, -# ) +# with torch.no_grad(): +# env.rollout( +# max_steps=max_steps, +# policy=policy, +# callback=lambda env, _: env.render(), +# auto_cast_to_device=True, +# break_when_any_done=False, +# ) # # If you are running this in Google Colab, you can render the trained policy by running: # @@ -745,13 +746,14 @@ # def rendering_callback(env, td): # env.frames.append(Image.fromarray(env.render(mode="rgb_array"))) # env.frames = [] -# env.rollout( -# max_steps=max_steps, -# policy=policy, -# callback=rendering_callback, -# auto_cast_to_device=True, -# break_when_any_done=False, -# ) +# with torch.no_grad(): +# env.rollout( +# max_steps=max_steps, +# policy=policy, +# callback=rendering_callback, +# auto_cast_to_device=True, +# break_when_any_done=False, +# ) # env.frames[0].save( # f"{scenario_name}.gif", # save_all=True, From ea16820e6a559505a22a7e1f72d5d6617e057f37 Mon Sep 17 00:00:00 2001 From: Omkar Salpekar Date: Fri, 8 Sep 2023 08:33:45 -0400 Subject: [PATCH 075/148] [CI] Remove CCI Config (#1456) Co-authored-by: vmoens --- .circleci/config.yml | 196 ---------- .circleci/docs/setup_env.sh | 66 ---- .../linux_stable/scripts/environment.yml | 31 -- .../unittest/linux_stable/scripts/install.sh | 46 --- .../linux_stable/scripts/post_process.sh | 6 - .../linux_stable/scripts/run-clang-format.py | 356 ------------------ .../unittest/linux_stable/scripts/run_test.sh | 26 -- .../linux_stable/scripts/setup_env.sh | 127 ------- .../unittest/helpers/coverage_run_parallel.py | 0 .../unittest/linux/scripts/10_nvidia.json | 0 .../unittest/linux/scripts/environment.yml | 0 .../unittest/linux/scripts/post_process.sh | 0 .../linux/scripts/run-clang-format.py | 0 .../unittest/linux/scripts/run_all.sh | 4 +- .../linux_distributed/scripts/environment.yml | 0 .../linux_distributed/scripts/install.sh | 0 .../linux_distributed/scripts/post_process.sh | 0 .../scripts/run-clang-format.py | 0 .../linux_distributed/scripts/run_test.sh | 6 +- .../linux_distributed/scripts/setup_env.sh | 0 .../linux_examples/scripts/10_nvidia.json | 0 .../linux_examples/scripts/environment.yml | 0 .../linux_examples/scripts/post_process.sh | 0 .../scripts/run-clang-format.py | 0 .../linux_examples/scripts/run_all.sh | 0 .../linux_examples/scripts/run_local.sh | 4 +- .../linux_examples/scripts/run_test.sh | 56 +-- .../linux_libs/scripts_brax/environment.yml | 0 .../linux_libs/scripts_brax/install.sh | 0 .../linux_libs/scripts_brax/post_process.sh | 0 .../scripts_brax/run-clang-format.py | 0 .../linux_libs/scripts_brax/run_all.sh | 0 .../linux_libs/scripts_brax/run_test.sh | 2 +- .../linux_libs/scripts_brax/setup_env.sh | 0 .../linux_libs/scripts_d4rl/environment.yml | 0 .../linux_libs/scripts_d4rl/install.sh | 0 .../linux_libs/scripts_d4rl/post_process.sh | 0 .../scripts_d4rl/run-clang-format.py | 0 .../linux_libs/scripts_d4rl/run_test.sh | 2 +- .../linux_libs/scripts_d4rl/setup_env.sh | 0 .../scripts_envpool/environment.yml | 0 .../linux_libs/scripts_envpool/install.sh | 0 .../scripts_envpool/post_process.sh | 0 .../scripts_envpool/run-clang-format.py | 0 .../linux_libs/scripts_envpool/run_test.sh | 2 +- .../linux_libs/scripts_envpool/setup_env.sh | 0 .../linux_libs/scripts_gym/batch_scripts.sh | 0 .../linux_libs/scripts_gym/environment.yml | 0 .../linux_libs/scripts_gym/install.sh | 0 .../linux_libs/scripts_gym/post_process.sh | 0 .../scripts_gym/run-clang-format.py | 0 .../linux_libs/scripts_gym/run_test.sh | 6 +- .../linux_libs/scripts_gym/setup_env.sh | 0 .../linux_libs/scripts_habitat/10_nvidia.json | 0 .../scripts_habitat/environment.yml | 0 .../linux_libs/scripts_habitat/install.sh | 0 .../scripts_habitat/post_process.sh | 0 .../scripts_habitat/run-clang-format.py | 0 .../linux_libs/scripts_habitat/run_all.sh | 0 .../linux_libs/scripts_habitat/run_test.sh | 2 +- .../linux_libs/scripts_habitat/setup_env.sh | 0 .../scripts_jumanji/environment.yml | 0 .../linux_libs/scripts_jumanji/install.sh | 0 .../scripts_jumanji/post_process.sh | 0 .../scripts_jumanji/run-clang-format.py | 0 .../linux_libs/scripts_jumanji/run_test.sh | 2 +- .../linux_libs/scripts_jumanji/setup_env.sh | 0 .../linux_libs/scripts_rlhf/environment.yml | 0 .../linux_libs/scripts_rlhf/install.sh | 0 .../linux_libs/scripts_rlhf/post_process.sh | 0 .../scripts_rlhf/run-clang-format.py | 0 .../linux_libs/scripts_rlhf/run_test.sh | 2 +- .../linux_libs/scripts_rlhf/setup_env.sh | 0 .../scripts_robohive/environment.yml | 0 .../scripts_robohive/install_and_run_test.sh | 4 +- .../scripts_robohive/post_process.sh | 0 .../scripts_robohive/run-clang-format.py | 0 .../linux_libs/scripts_robohive/setup_env.sh | 0 .../scripts_sklearn/environment.yml | 0 .../linux_libs/scripts_sklearn/install.sh | 0 .../scripts_sklearn/post_process.sh | 0 .../scripts_sklearn/run-clang-format.py | 0 .../linux_libs/scripts_sklearn/run_test.sh | 2 +- .../linux_libs/scripts_sklearn/setup_env.sh | 0 .../linux_libs/scripts_vmas/environment.yml | 0 .../linux_libs/scripts_vmas/install.sh | 0 .../linux_libs/scripts_vmas/post_process.sh | 0 .../scripts_vmas/run-clang-format.py | 0 .../linux_libs/scripts_vmas/run_test.sh | 2 +- .../linux_libs/scripts_vmas/setup_env.sh | 0 .../scripts_gym_0_13/batch_scripts.sh | 0 .../scripts_gym_0_13/environment.yml | 0 .../linux_olddeps/scripts_gym_0_13/install.sh | 0 .../scripts_gym_0_13/post_process.sh | 0 .../scripts_gym_0_13/run-clang-format.py | 0 .../scripts_gym_0_13/run_test.sh | 6 +- .../scripts_gym_0_13/setup_env.sh | 0 .../linux_optdeps/scripts/10_nvidia.json | 0 .../linux_optdeps/scripts/environment.yml | 0 .../unittest/linux_optdeps/scripts/install.sh | 0 .../linux_optdeps/scripts/post_process.sh | 0 .../linux_optdeps/scripts/run-clang-format.py | 0 .../unittest/linux_optdeps/scripts/run_all.sh | 0 .../linux_optdeps/scripts/run_test.sh | 2 +- .../linux_optdeps/scripts/setup_env.sh | 0 .../windows_optdepts/scripts/environment.yml | 0 .../windows_optdepts/scripts/install.sh | 0 .../scripts/install_conda.bat | 0 .../windows_optdepts/scripts/post_process.sh | 0 .../windows_optdepts/scripts/run_test.sh | 0 .../windows_optdepts/scripts/set_cuda_envs.sh | 0 .../windows_optdepts/scripts/setup_env.sh | 0 .../scripts/vc_env_helper.bat | 0 .github/workflows/lint.yml | 2 +- .github/workflows/test-linux-brax.yml | 2 +- .github/workflows/test-linux-cpu.yml | 2 +- .github/workflows/test-linux-d4rl.yml | 8 +- .github/workflows/test-linux-envpool.yml | 8 +- .github/workflows/test-linux-examples.yml | 2 +- .github/workflows/test-linux-gpu.yml | 2 +- .github/workflows/test-linux-gym.yml | 6 +- .github/workflows/test-linux-habitat.yml | 2 +- .github/workflows/test-linux-jumanji.yml | 8 +- .github/workflows/test-linux-olddeps.yml | 6 +- .github/workflows/test-linux-optdeps.yml | 2 +- .github/workflows/test-linux-rlhf.yml | 8 +- .github/workflows/test-linux-robohive.yml | 6 +- .github/workflows/test-linux-sklearn.yml | 8 +- .github/workflows/test-linux-stable-gpu.yml | 2 +- .github/workflows/test-linux-vmas.yml | 8 +- .github/workflows/test-macos-cpu.yml | 2 +- .../workflows/test-windows-optdepts-cpu.yml | 8 +- .../workflows/test-windows-optdepts-gpu.yml | 8 +- 133 files changed, 102 insertions(+), 956 deletions(-) delete mode 100644 .circleci/config.yml delete mode 100755 .circleci/docs/setup_env.sh delete mode 100644 .circleci/unittest/linux_stable/scripts/environment.yml delete mode 100755 .circleci/unittest/linux_stable/scripts/install.sh delete mode 100755 .circleci/unittest/linux_stable/scripts/post_process.sh delete mode 100755 .circleci/unittest/linux_stable/scripts/run-clang-format.py delete mode 100755 .circleci/unittest/linux_stable/scripts/run_test.sh delete mode 100755 .circleci/unittest/linux_stable/scripts/setup_env.sh rename {.circleci => .github}/unittest/helpers/coverage_run_parallel.py (100%) rename {.circleci => .github}/unittest/linux/scripts/10_nvidia.json (100%) rename {.circleci => .github}/unittest/linux/scripts/environment.yml (100%) rename {.circleci => .github}/unittest/linux/scripts/post_process.sh (100%) rename {.circleci => .github}/unittest/linux/scripts/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux/scripts/run_all.sh (97%) rename {.circleci => .github}/unittest/linux_distributed/scripts/environment.yml (100%) rename {.circleci => .github}/unittest/linux_distributed/scripts/install.sh (100%) rename {.circleci => .github}/unittest/linux_distributed/scripts/post_process.sh (100%) rename {.circleci => .github}/unittest/linux_distributed/scripts/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux_distributed/scripts/run_test.sh (57%) rename {.circleci => .github}/unittest/linux_distributed/scripts/setup_env.sh (100%) rename {.circleci => .github}/unittest/linux_examples/scripts/10_nvidia.json (100%) rename {.circleci => .github}/unittest/linux_examples/scripts/environment.yml (100%) rename {.circleci => .github}/unittest/linux_examples/scripts/post_process.sh (100%) rename {.circleci => .github}/unittest/linux_examples/scripts/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux_examples/scripts/run_all.sh (100%) rename {.circleci => .github}/unittest/linux_examples/scripts/run_local.sh (73%) rename {.circleci => .github}/unittest/linux_examples/scripts/run_test.sh (73%) rename {.circleci => .github}/unittest/linux_libs/scripts_brax/environment.yml (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_brax/install.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_brax/post_process.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_brax/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_brax/run_all.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_brax/run_test.sh (86%) rename {.circleci => .github}/unittest/linux_libs/scripts_brax/setup_env.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_d4rl/environment.yml (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_d4rl/install.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_d4rl/post_process.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_d4rl/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_d4rl/run_test.sh (86%) rename {.circleci => .github}/unittest/linux_libs/scripts_d4rl/setup_env.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_envpool/environment.yml (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_envpool/install.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_envpool/post_process.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_envpool/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_envpool/run_test.sh (84%) rename {.circleci => .github}/unittest/linux_libs/scripts_envpool/setup_env.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_gym/batch_scripts.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_gym/environment.yml (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_gym/install.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_gym/post_process.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_gym/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_gym/run_test.sh (57%) rename {.circleci => .github}/unittest/linux_libs/scripts_gym/setup_env.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_habitat/10_nvidia.json (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_habitat/environment.yml (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_habitat/install.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_habitat/post_process.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_habitat/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_habitat/run_all.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_habitat/run_test.sh (90%) rename {.circleci => .github}/unittest/linux_libs/scripts_habitat/setup_env.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_jumanji/environment.yml (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_jumanji/install.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_jumanji/post_process.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_jumanji/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_jumanji/run_test.sh (83%) rename {.circleci => .github}/unittest/linux_libs/scripts_jumanji/setup_env.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_rlhf/environment.yml (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_rlhf/install.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_rlhf/post_process.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_rlhf/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_rlhf/run_test.sh (78%) rename {.circleci => .github}/unittest/linux_libs/scripts_rlhf/setup_env.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_robohive/environment.yml (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_robohive/install_and_run_test.sh (89%) rename {.circleci => .github}/unittest/linux_libs/scripts_robohive/post_process.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_robohive/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_robohive/setup_env.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_sklearn/environment.yml (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_sklearn/install.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_sklearn/post_process.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_sklearn/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_sklearn/run_test.sh (77%) rename {.circleci => .github}/unittest/linux_libs/scripts_sklearn/setup_env.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_vmas/environment.yml (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_vmas/install.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_vmas/post_process.sh (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_vmas/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux_libs/scripts_vmas/run_test.sh (81%) rename {.circleci => .github}/unittest/linux_libs/scripts_vmas/setup_env.sh (100%) rename {.circleci => .github}/unittest/linux_olddeps/scripts_gym_0_13/batch_scripts.sh (100%) rename {.circleci => .github}/unittest/linux_olddeps/scripts_gym_0_13/environment.yml (100%) rename {.circleci => .github}/unittest/linux_olddeps/scripts_gym_0_13/install.sh (100%) rename {.circleci => .github}/unittest/linux_olddeps/scripts_gym_0_13/post_process.sh (100%) rename {.circleci => .github}/unittest/linux_olddeps/scripts_gym_0_13/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux_olddeps/scripts_gym_0_13/run_test.sh (62%) rename {.circleci => .github}/unittest/linux_olddeps/scripts_gym_0_13/setup_env.sh (100%) rename {.circleci => .github}/unittest/linux_optdeps/scripts/10_nvidia.json (100%) rename {.circleci => .github}/unittest/linux_optdeps/scripts/environment.yml (100%) rename {.circleci => .github}/unittest/linux_optdeps/scripts/install.sh (100%) rename {.circleci => .github}/unittest/linux_optdeps/scripts/post_process.sh (100%) rename {.circleci => .github}/unittest/linux_optdeps/scripts/run-clang-format.py (100%) rename {.circleci => .github}/unittest/linux_optdeps/scripts/run_all.sh (100%) rename {.circleci => .github}/unittest/linux_optdeps/scripts/run_test.sh (72%) rename {.circleci => .github}/unittest/linux_optdeps/scripts/setup_env.sh (100%) rename {.circleci => .github}/unittest/windows_optdepts/scripts/environment.yml (100%) rename {.circleci => .github}/unittest/windows_optdepts/scripts/install.sh (100%) rename {.circleci => .github}/unittest/windows_optdepts/scripts/install_conda.bat (100%) rename {.circleci => .github}/unittest/windows_optdepts/scripts/post_process.sh (100%) rename {.circleci => .github}/unittest/windows_optdepts/scripts/run_test.sh (100%) rename {.circleci => .github}/unittest/windows_optdepts/scripts/set_cuda_envs.sh (100%) rename {.circleci => .github}/unittest/windows_optdepts/scripts/setup_env.sh (100%) rename {.circleci => .github}/unittest/windows_optdepts/scripts/vc_env_helper.bat (100%) diff --git a/.circleci/config.yml b/.circleci/config.yml deleted file mode 100644 index 67a16f054d7..00000000000 --- a/.circleci/config.yml +++ /dev/null @@ -1,196 +0,0 @@ -version: 2.1 - -commands: - checkout_merge: - description: "checkout merge branch" - steps: - - checkout - designate_upload_channel: - description: "inserts the correct upload channel into ${BASH_ENV}" - steps: - - run: - name: adding UPLOAD_CHANNEL to BASH_ENV - command: | - our_upload_channel=nightly - # On tags upload to test instead - if [[ -n "${CIRCLE_TAG}" ]] || [[ ${CIRCLE_BRANCH} =~ release/* ]]; then - our_upload_channel=test - fi - echo "export UPLOAD_CHANNEL=${our_upload_channel}" >> ${BASH_ENV} - apt_install: - parameters: - args: - type: string - descr: - type: string - default: "" - update: - type: boolean - default: true - steps: - - run: - name: > - <<^ parameters.descr >> apt install << parameters.args >> <> - <<# parameters.descr >> << parameters.descr >> <> - command: | - <<# parameters.update >> sudo apt update -qy <> - sudo apt install << parameters.args >> - pip_install: - parameters: - args: - type: string - descr: - type: string - default: "" - user: - type: boolean - default: true - steps: - - run: - name: > - <<^ parameters.descr >> pip install << parameters.args >> <> - <<# parameters.descr >> << parameters.descr >> <> - command: > - pip install - <<# parameters.user >> --user <> - --progress-bar=off - << parameters.args >> - - install_torchrl: - parameters: - editable: - type: boolean - default: true - steps: - - pip_install: - args: --pre torch -f https://download.pytorch.org/whl/nightly/cpu/torch_nightly.html - descr: Install PyTorch from nightly releases - - pip_install: - args: --no-build-isolation <<# parameters.editable >> --editable <> . - descr: Install torchrl <<# parameters.editable >> in editable mode <> - - -binary_common: &binary_common - parameters: - # Edit these defaults to do a release - build_version: - description: "version number of release binary; by default, build a nightly" - type: string - default: "" - pytorch_version: - description: "PyTorch version to build against; by default, use a nightly" - type: string - default: "" - # Don't edit these - python_version: - description: "Python version to build against (e.g., 3.7)" - type: string - cu_version: - description: "CUDA version to build against, in CU format (e.g., cpu or cu100)" - type: string - default: "cpu" - unicode_abi: - description: "Python 2.7 wheel only: whether or not we are cp27mu (default: no)" - type: string - default: "" - conda_docker_image: - description: "Conda only: what docker image to use" - type: string - default: "pytorch/conda-builder:cpu" - environment: - PYTHON_VERSION: << parameters.python_version >> - PYTORCH_VERSION: << parameters.pytorch_version >> - UNICODE_ABI: << parameters.unicode_abi >> - CU_VERSION: << parameters.cu_version >> - -smoke_test_common: &smoke_test_common - <<: *binary_common - docker: - - image: torchrl/smoke_test:latest - -jobs: - type_check_python: - docker: - - image: circleci/python:3.7 - steps: - - checkout - - pip_install: - args: cmake ninja - descr: Install CMake and Ninja - - install_torchrl: - editable: true - - pip_install: - args: mypy - descr: Install Python type check utilities - - run: - name: Check Python types statically - command: mypy --install-types --non-interactive --config-file mypy.ini - - unittest_linux_stable_gpu: - <<: *binary_common - machine: - image: ubuntu-2004-cuda-11.4:202110-01 - resource_class: gpu.nvidia.medium - environment: - image_name: "pytorch/manylinux-cuda116" - TAR_OPTIONS: --no-same-owner - PYTHON_VERSION: << parameters.python_version >> - CU_VERSION: << parameters.cu_version >> - - steps: - - checkout - - designate_upload_channel - - run: - name: Generate cache key - # This will refresh cache on Sundays, nightly build should generate new cache. - command: echo "$(date +"%Y-%U")" > .circleci-weekly - - restore_cache: - - keys: - - env-v3-linux-{{ arch }}-py<< parameters.python_version >>-{{ checksum ".circleci/unittest/linux_stable/scripts/environment.yml" }}-{{ checksum ".circleci-weekly" }} - - - run: - name: Setup - command: docker run -e PYTHON_VERSION -t --gpus all -v $PWD:$PWD -w $PWD "${image_name}" .circleci/unittest/linux_stable/scripts/setup_env.sh - - save_cache: - - key: env-v3-linux-{{ arch }}-py<< parameters.python_version >>-{{ checksum ".circleci/unittest/linux_stable/scripts/environment.yml" }}-{{ checksum ".circleci-weekly" }} - - paths: - - conda - - env -# - run: -# # Here we create an envlist file that contains some env variables that we want the docker container to be aware of. -# # Normally, the CIRCLECI variable is set and available on all CI workflows: https://circleci.com/docs/2.0/env-vars/#built-in-environment-variables. -# # They're available in all the other workflows (OSX and Windows). -# # But here, we're running the unittest_linux_gpu workflows in a docker container, where those variables aren't accessible. -# # So instead we dump the variables we need in env.list and we pass that file when invoking "docker run". -# name: export CIRCLECI env var -# command: echo "CIRCLECI=true" >> ./env.list - - run: - name: Install torchrl -# command: bash .circleci/unittest/linux_stable/scripts/install.sh - command: docker run -t --gpus all -v $PWD:$PWD -w $PWD -e UPLOAD_CHANNEL -e CU_VERSION "${image_name}" .circleci/unittest/linux_stable/scripts/install.sh - - run: - name: Run tests - command: bash .circleci/unittest/linux_stable/scripts/run_test.sh -# command: docker run --env-file ./env.list -t --gpus all -v $PWD:$PWD -w $PWD "${image_name}" .circleci/unittest/linux/scripts/run_test.sh - - run: - name: Codecov upload - command: | - curl -Os https://uploader.codecov.io/latest/linux/codecov - chmod +x codecov - ./codecov -t ${CODECOV_TOKEN} -s ./ -Z -F linux-stable-gpu - - run: - name: Post Process - command: docker run -t --gpus all -v $PWD:$PWD -w $PWD "${image_name}" .circleci/unittest/linux_stable/scripts/post_process.sh - - store_test_results: - path: test-results - -workflows: - unittest: - jobs: - - unittest_linux_stable_gpu: - cu_version: cu116 - name: unittest_linux_stable_gpu_py3.9 - python_version: '3.9' diff --git a/.circleci/docs/setup_env.sh b/.circleci/docs/setup_env.sh deleted file mode 100755 index 496e57b29bd..00000000000 --- a/.circleci/docs/setup_env.sh +++ /dev/null @@ -1,66 +0,0 @@ -#apt-get update -y -#apt-get install software-properties-common -y -#add-apt-repository ppa:git-core/candidate -y -#apt-get update -y -#apt-get upgrade -y -#apt-get -y install libglfw3 libglew2.0 gcc curl g++ unzip \ -# wget sudo git cmake libz-dev \ -# zlib1g-dev python3.8 python3-pip ninja - -#yum install -y mesa-libGL freeglut egl-utils glew glfw -#yum install -y glew glfw -apt-get update && apt-get install -y git wget gcc g++ - -root_dir="$(pwd)" -conda_dir="${root_dir}/conda" -env_dir="${root_dir}/env" - -os=Linux - -# 1. Install conda at ./conda -printf "* Installing conda\n" -wget -O miniconda.sh "http://repo.continuum.io/miniconda/Miniconda3-latest-${os}-x86_64.sh" -bash ./miniconda.sh -b -f -p "${conda_dir}" - -eval "$(${conda_dir}/bin/conda shell.bash hook)" - -printf "* Creating a test environment\n" -conda create --prefix "${env_dir}" -y python="$PYTHON_VERSION" - -printf "* Activating\n" -conda activate "${env_dir}" - -conda install -c conda-forge zlib -y - -pip3 install --upgrade pip --quiet --root-user-action=ignore - -printf "python version\n" -python --version - -pip3 install --pre torch torchvision --index-url https://download.pytorch.org/whl/nightly/cu118 --quiet --root-user-action=ignore -#pip3 install --pre torch torchvision --index-url https://download.pytorch.org/whl/nightly/cpu --quiet --root-user-action=ignore - -printf "Installing tensordict\n" -pip3 install git+https://github.com/pytorch-labs/tensordict.git --quiet --root-user-action=ignore - -printf "Installing torchrl\n" -pip3 install -e . --quiet --root-user-action=ignore - -printf "Installing requirements\n" -pip3 install -r docs/requirements.txt --quiet --root-user-action=ignore -printf "Installed all dependencies\n" - -printf "smoke test\n" -PYOPENGL_PLATFORM=egl MUJOCO_GL=egl python3 -c """from torchrl.envs.libs.dm_control import DMControlEnv -print(DMControlEnv('cheetah', 'run').reset()) -""" - -printf "building docs...\n" -cd ./docs -#timeout 7m bash -ic "MUJOCO_GL=egl sphinx-build SPHINXOPTS=-v ./source _local_build" || code=$?; if [[ $code -ne 124 && $code -ne 0 ]]; then exit $code; fi -PYOPENGL_PLATFORM=egl MUJOCO_GL=egl sphinx-build ./source _local_build -cd .. -printf "done!\n" - -git clone --branch gh-pages https://github.com/pytorch-labs/tensordict.git docs/_local_build/tensordict -rm -rf docs/_local_build/tensordict/.git diff --git a/.circleci/unittest/linux_stable/scripts/environment.yml b/.circleci/unittest/linux_stable/scripts/environment.yml deleted file mode 100644 index 3ea4037802e..00000000000 --- a/.circleci/unittest/linux_stable/scripts/environment.yml +++ /dev/null @@ -1,31 +0,0 @@ -channels: - - pytorch - - defaults -dependencies: - - pip - - ninja - - protobuf - - pip: - - hypothesis - - future - - cloudpickle - - pygame - - moviepy - - tqdm - - pytest - - pytest-cov - - pytest-mock - - pytest-instafail - - pytest-rerunfailures - - expecttest - - pyyaml - - scipy - - hydra-core - - tensorboard - - imageio==2.26.0 - - wandb - - dm_control - - mlflow - - av - - coverage - - ray diff --git a/.circleci/unittest/linux_stable/scripts/install.sh b/.circleci/unittest/linux_stable/scripts/install.sh deleted file mode 100755 index 53b208092eb..00000000000 --- a/.circleci/unittest/linux_stable/scripts/install.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/usr/bin/env bash - -unset PYTORCH_VERSION -# For unittest, nightly PyTorch is used as the following section, -# so no need to set PYTORCH_VERSION. -# In fact, keeping PYTORCH_VERSION forces us to hardcode PyTorch version in config. - -set -e - -eval "$(./conda/bin/conda shell.bash hook)" -conda activate ./env - -if [ "${CU_VERSION:-}" == cpu ] ; then - version="cpu" - echo "Using cpu build" -else - if [[ ${#CU_VERSION} -eq 4 ]]; then - CUDA_VERSION="${CU_VERSION:2:1}.${CU_VERSION:3:1}" - elif [[ ${#CU_VERSION} -eq 5 ]]; then - CUDA_VERSION="${CU_VERSION:2:2}.${CU_VERSION:4:1}" - fi - echo "Using CUDA $CUDA_VERSION as determined by CU_VERSION ($CU_VERSION)" - version="$(python -c "print('.'.join(\"${CUDA_VERSION}\".split('.')[:2]))")" -fi - -# submodules -git submodule sync && git submodule update --init --recursive - -printf "Installing PyTorch with %s\n" "${CU_VERSION}" -if [ "${CU_VERSION:-}" == cpu ] ; then - pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cpu -else - pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu118 -fi - -# install tensordict -pip install git+https://github.com/pytorch-labs/tensordict.git - -# smoke test -python -c "import torch;import functorch" - -printf "* Installing torchrl\n" -printf "g++ version: " -gcc --version - -python setup.py develop diff --git a/.circleci/unittest/linux_stable/scripts/post_process.sh b/.circleci/unittest/linux_stable/scripts/post_process.sh deleted file mode 100755 index e97bf2a7b1b..00000000000 --- a/.circleci/unittest/linux_stable/scripts/post_process.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/env bash - -set -e - -eval "$(./conda/bin/conda shell.bash hook)" -conda activate ./env diff --git a/.circleci/unittest/linux_stable/scripts/run-clang-format.py b/.circleci/unittest/linux_stable/scripts/run-clang-format.py deleted file mode 100755 index 5783a885d86..00000000000 --- a/.circleci/unittest/linux_stable/scripts/run-clang-format.py +++ /dev/null @@ -1,356 +0,0 @@ -#!/usr/bin/env python -""" -MIT License - -Copyright (c) 2017 Guillaume Papin - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - -A wrapper script around clang-format, suitable for linting multiple files -and to use for continuous integration. - -This is an alternative API for the clang-format command line. -It runs over multiple files and directories in parallel. -A diff output is produced and a sensible exit code is returned. - -""" - -import argparse -import difflib -import fnmatch -import multiprocessing -import os -import signal -import subprocess -import sys -import traceback -from functools import partial - -try: - from subprocess import DEVNULL # py3k -except ImportError: - DEVNULL = open(os.devnull, "wb") - - -DEFAULT_EXTENSIONS = "c,h,C,H,cpp,hpp,cc,hh,c++,h++,cxx,hxx,cu" - - -class ExitStatus: - SUCCESS = 0 - DIFF = 1 - TROUBLE = 2 - - -def list_files(files, recursive=False, extensions=None, exclude=None): - if extensions is None: - extensions = [] - if exclude is None: - exclude = [] - - out = [] - for file in files: - if recursive and os.path.isdir(file): - for dirpath, dnames, fnames in os.walk(file): - fpaths = [os.path.join(dirpath, fname) for fname in fnames] - for pattern in exclude: - # os.walk() supports trimming down the dnames list - # by modifying it in-place, - # to avoid unnecessary directory listings. - dnames[:] = [ - x - for x in dnames - if not fnmatch.fnmatch(os.path.join(dirpath, x), pattern) - ] - fpaths = [x for x in fpaths if not fnmatch.fnmatch(x, pattern)] - for f in fpaths: - ext = os.path.splitext(f)[1][1:] - if ext in extensions: - out.append(f) - else: - out.append(file) - return out - - -def make_diff(file, original, reformatted): - return list( - difflib.unified_diff( - original, - reformatted, - fromfile=f"{file}\t(original)", - tofile=f"{file}\t(reformatted)", - n=3, - ) - ) - - -class DiffError(Exception): - def __init__(self, message, errs=None): - super().__init__(message) - self.errs = errs or [] - - -class UnexpectedError(Exception): - def __init__(self, message, exc=None): - super().__init__(message) - self.formatted_traceback = traceback.format_exc() - self.exc = exc - - -def run_clang_format_diff_wrapper(args, file): - try: - ret = run_clang_format_diff(args, file) - return ret - except DiffError: - raise - except Exception as e: - raise UnexpectedError(f"{file}: {e.__class__.__name__}: {e}", e) - - -def run_clang_format_diff(args, file): - try: - with open(file, encoding="utf-8") as f: - original = f.readlines() - except OSError as exc: - raise DiffError(str(exc)) - invocation = [args.clang_format_executable, file] - - # Use of utf-8 to decode the process output. - # - # Hopefully, this is the correct thing to do. - # - # It's done due to the following assumptions (which may be incorrect): - # - clang-format will returns the bytes read from the files as-is, - # without conversion, and it is already assumed that the files use utf-8. - # - if the diagnostics were internationalized, they would use utf-8: - # > Adding Translations to Clang - # > - # > Not possible yet! - # > Diagnostic strings should be written in UTF-8, - # > the client can translate to the relevant code page if needed. - # > Each translation completely replaces the format string - # > for the diagnostic. - # > -- http://clang.llvm.org/docs/InternalsManual.html#internals-diag-translation - - try: - proc = subprocess.Popen( - invocation, - stdout=subprocess.PIPE, - stderr=subprocess.PIPE, - universal_newlines=True, - encoding="utf-8", - ) - except OSError as exc: - raise DiffError( - f"Command '{subprocess.list2cmdline(invocation)}' failed to start: {exc}" - ) - proc_stdout = proc.stdout - proc_stderr = proc.stderr - - # hopefully the stderr pipe won't get full and block the process - outs = list(proc_stdout.readlines()) - errs = list(proc_stderr.readlines()) - proc.wait() - if proc.returncode: - raise DiffError( - "Command '{}' returned non-zero exit status {}".format( - subprocess.list2cmdline(invocation), proc.returncode - ), - errs, - ) - return make_diff(file, original, outs), errs - - -def bold_red(s): - return "\x1b[1m\x1b[31m" + s + "\x1b[0m" - - -def colorize(diff_lines): - def bold(s): - return "\x1b[1m" + s + "\x1b[0m" - - def cyan(s): - return "\x1b[36m" + s + "\x1b[0m" - - def green(s): - return "\x1b[32m" + s + "\x1b[0m" - - def red(s): - return "\x1b[31m" + s + "\x1b[0m" - - for line in diff_lines: - if line[:4] in ["--- ", "+++ "]: - yield bold(line) - elif line.startswith("@@ "): - yield cyan(line) - elif line.startswith("+"): - yield green(line) - elif line.startswith("-"): - yield red(line) - else: - yield line - - -def print_diff(diff_lines, use_color): - if use_color: - diff_lines = colorize(diff_lines) - sys.stdout.writelines(diff_lines) - - -def print_trouble(prog, message, use_colors): - error_text = "error:" - if use_colors: - error_text = bold_red(error_text) - print(f"{prog}: {error_text} {message}", file=sys.stderr) - - -def main(): - parser = argparse.ArgumentParser(description=__doc__) - parser.add_argument( - "--clang-format-executable", - metavar="EXECUTABLE", - help="path to the clang-format executable", - default="clang-format", - ) - parser.add_argument( - "--extensions", - help=f"comma separated list of file extensions (default: {DEFAULT_EXTENSIONS})", - default=DEFAULT_EXTENSIONS, - ) - parser.add_argument( - "-r", - "--recursive", - action="store_true", - help="run recursively over directories", - ) - parser.add_argument("files", metavar="file", nargs="+") - parser.add_argument("-q", "--quiet", action="store_true") - parser.add_argument( - "-j", - metavar="N", - type=int, - default=0, - help="run N clang-format jobs in parallel (default number of cpus + 1)", - ) - parser.add_argument( - "--color", - default="auto", - choices=["auto", "always", "never"], - help="show colored diff (default: auto)", - ) - parser.add_argument( - "-e", - "--exclude", - metavar="PATTERN", - action="append", - default=[], - help="exclude paths matching the given glob-like pattern(s) from recursive search", - ) - - args = parser.parse_args() - - # use default signal handling, like diff return SIGINT value on ^C - # https://bugs.python.org/issue14229#msg156446 - signal.signal(signal.SIGINT, signal.SIG_DFL) - try: - signal.SIGPIPE - except AttributeError: - # compatibility, SIGPIPE does not exist on Windows - pass - else: - signal.signal(signal.SIGPIPE, signal.SIG_DFL) - - colored_stdout = False - colored_stderr = False - if args.color == "always": - colored_stdout = True - colored_stderr = True - elif args.color == "auto": - colored_stdout = sys.stdout.isatty() - colored_stderr = sys.stderr.isatty() - - version_invocation = [args.clang_format_executable, "--version"] - try: - subprocess.check_call(version_invocation, stdout=DEVNULL) - except subprocess.CalledProcessError as e: - print_trouble(parser.prog, str(e), use_colors=colored_stderr) - return ExitStatus.TROUBLE - except OSError as e: - print_trouble( - parser.prog, - f"Command '{subprocess.list2cmdline(version_invocation)}' failed to start: {e}", - use_colors=colored_stderr, - ) - return ExitStatus.TROUBLE - - retcode = ExitStatus.SUCCESS - files = list_files( - args.files, - recursive=args.recursive, - exclude=args.exclude, - extensions=args.extensions.split(","), - ) - - if not files: - return - - njobs = args.j - if njobs == 0: - njobs = multiprocessing.cpu_count() + 1 - njobs = min(len(files), njobs) - - if njobs == 1: - # execute directly instead of in a pool, - # less overhead, simpler stacktraces - it = (run_clang_format_diff_wrapper(args, file) for file in files) - pool = None - else: - pool = multiprocessing.Pool(njobs) - it = pool.imap_unordered(partial(run_clang_format_diff_wrapper, args), files) - while True: - try: - outs, errs = next(it) - except StopIteration: - break - except DiffError as e: - print_trouble(parser.prog, str(e), use_colors=colored_stderr) - retcode = ExitStatus.TROUBLE - sys.stderr.writelines(e.errs) - except UnexpectedError as e: - print_trouble(parser.prog, str(e), use_colors=colored_stderr) - sys.stderr.write(e.formatted_traceback) - retcode = ExitStatus.TROUBLE - # stop at the first unexpected error, - # something could be very wrong, - # don't process all files unnecessarily - if pool: - pool.terminate() - break - else: - sys.stderr.writelines(errs) - if outs == []: - continue - if not args.quiet: - print_diff(outs, use_color=colored_stdout) - if retcode == ExitStatus.SUCCESS: - retcode = ExitStatus.DIFF - return retcode - - -if __name__ == "__main__": - sys.exit(main()) diff --git a/.circleci/unittest/linux_stable/scripts/run_test.sh b/.circleci/unittest/linux_stable/scripts/run_test.sh deleted file mode 100755 index 1f936c73691..00000000000 --- a/.circleci/unittest/linux_stable/scripts/run_test.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash - -set -e - -eval "$(./conda/bin/conda shell.bash hook)" -conda activate ./env - -export PYTORCH_TEST_WITH_SLOW='1' -python -m torch.utils.collect_env -# Avoid error: "fatal: unsafe repository" -git config --global --add safe.directory '*' - -root_dir="$(git rev-parse --show-toplevel)" -env_dir="${root_dir}/env" -lib_dir="${env_dir}/lib" - -# solves ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found -export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$lib_dir -export MKL_THREADING_LAYER=GNU -export CKPT_BACKEND=torch - -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test.py -v --durations 200 -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test_deps.py -v --durations 200 -k 'test_gym or test_dm_control_pixels or test_dm_control or test_tb' -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest --instafail -v --durations 200 --ignore test/test_distributed.py --ignore test/test_rlhf.py -coverage combine -coverage xml -i diff --git a/.circleci/unittest/linux_stable/scripts/setup_env.sh b/.circleci/unittest/linux_stable/scripts/setup_env.sh deleted file mode 100755 index f08d3943570..00000000000 --- a/.circleci/unittest/linux_stable/scripts/setup_env.sh +++ /dev/null @@ -1,127 +0,0 @@ -#!/usr/bin/env bash - -# This script is for setting up environment in which unit test is ran. -# To speed up the CI time, the resulting environment is cached. -# -# Do not install PyTorch and torchvision here, otherwise they also get cached. - -set -e - -this_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" -# Avoid error: "fatal: unsafe repository" -git config --global --add safe.directory '*' -root_dir="$(git rev-parse --show-toplevel)" -conda_dir="${root_dir}/conda" -env_dir="${root_dir}/env" -lib_dir="${env_dir}/lib" - -cd "${root_dir}" - -case "$(uname -s)" in - Darwin*) os=MacOSX;; - *) os=Linux -esac - -# 1. Install conda at ./conda -if [ ! -d "${conda_dir}" ]; then - printf "* Installing conda\n" - wget -O miniconda.sh "http://repo.continuum.io/miniconda/Miniconda3-latest-${os}-x86_64.sh" - bash ./miniconda.sh -b -f -p "${conda_dir}" -fi -eval "$(${conda_dir}/bin/conda shell.bash hook)" - -# 2. Create test environment at ./env -printf "python: ${PYTHON_VERSION}\n" -if [ ! -d "${env_dir}" ]; then - printf "* Creating a test environment\n" - conda create --prefix "${env_dir}" -y python="$PYTHON_VERSION" -fi -conda activate "${env_dir}" - -## 3. Install mujoco -#printf "* Installing mujoco and related\n" -#mkdir -p $root_dir/.mujoco -#cd $root_dir/.mujoco/ -#wget https://github.com/deepmind/mujoco/releases/download/2.1.1/mujoco-2.1.1-linux-x86_64.tar.gz -#tar -xf mujoco-2.1.1-linux-x86_64.tar.gz -#wget https://mujoco.org/download/mujoco210-linux-x86_64.tar.gz -#tar -xf mujoco210-linux-x86_64.tar.gz -#cd $this_dir - -# 4. Install Conda dependencies -printf "* Installing dependencies (except PyTorch)\n" -echo " - python=${PYTHON_VERSION}" >> "${this_dir}/environment.yml" -cat "${this_dir}/environment.yml" - - -if [[ $OSTYPE == 'darwin'* ]]; then - PRIVATE_MUJOCO_GL=glfw -elif [ "${CU_VERSION:-}" == cpu ]; then - PRIVATE_MUJOCO_GL=osmesa -else - PRIVATE_MUJOCO_GL=egl -fi - -export MUJOCO_GL=$PRIVATE_MUJOCO_GL -conda env config vars set MUJOCO_PY_MUJOCO_PATH=$root_dir/.mujoco/mujoco210 \ - DISPLAY=unix:0.0 \ - MJLIB_PATH=$root_dir/.mujoco/mujoco-2.1.1/lib/libmujoco.so.2.1.1 \ - LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$root_dir/.mujoco/mujoco210/bin \ - SDL_VIDEODRIVER=dummy \ - MUJOCO_GL=$PRIVATE_MUJOCO_GL \ - PYOPENGL_PLATFORM=$PRIVATE_MUJOCO_GL - -# Software rendering requires GLX and OSMesa. -if [ $PRIVATE_MUJOCO_GL == 'egl' ] || [ $PRIVATE_MUJOCO_GL == 'osmesa' ] ; then - yum makecache - yum install -y glfw - yum install -y glew - yum install -y mesa-libGL - yum install -y mesa-libGL-devel - yum install -y mesa-libOSMesa-devel - yum -y install egl-utils - yum -y install freeglut -fi - -pip install pip --upgrade - -conda env update --file "${this_dir}/environment.yml" --prune - -conda deactivate -conda activate "${env_dir}" - -if [[ $OSTYPE != 'darwin'* ]]; then - # install ale-py: manylinux names are broken for CentOS so we need to manually download and - # rename them - PY_VERSION=$(python --version) - echo "installing ale-py for ${PY_PY_VERSION}" - if [[ $PY_VERSION == *"3.7"* ]]; then - wget https://files.pythonhosted.org/packages/ab/fd/6615982d9460df7f476cad265af1378057eee9daaa8e0026de4cedbaffbd/ale_py-0.8.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pip install ale_py-0.8.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - rm ale_py-0.8.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - elif [[ $PY_VERSION == *"3.8"* ]]; then - wget https://files.pythonhosted.org/packages/0f/8a/feed20571a697588bc4bfef05d6a487429c84f31406a52f8af295a0346a2/ale_py-0.8.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pip install ale_py-0.8.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - rm ale_py-0.8.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - elif [[ $PY_VERSION == *"3.9"* ]]; then - wget https://files.pythonhosted.org/packages/a0/98/4316c1cedd9934f9a91b6e27a9be126043b4445594b40cfa391c8de2e5e8/ale_py-0.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pip install ale_py-0.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - rm ale_py-0.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - elif [[ $PY_VERSION == *"3.10"* ]]; then - wget https://files.pythonhosted.org/packages/60/1b/3adde7f44f79fcc50d0a00a0643255e48024c4c3977359747d149dc43500/ale_py-0.8.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl - mv ale_py-0.8.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pip install ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - rm ale_py-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - elif [[ $PY_VERSION == *"3.11"* ]]; then - wget https://files.pythonhosted.org/packages/60/1b/3adde7f44f79fcc50d0a00a0643255e48024c4c3977359747d149dc43500/ale_py-0.8.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl - mv ale_py-0.8.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pip install ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - rm ale_py-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - fi - echo "installing gymnasium" - pip install "gymnasium[atari,accept-rom-license]" - pip install mo-gymnasium[mujoco] # requires here bc needs mujoco-py -else - pip install "gymnasium[atari,accept-rom-license]" - pip install mo-gymnasium[mujoco] # requires here bc needs mujoco-py -fi diff --git a/.circleci/unittest/helpers/coverage_run_parallel.py b/.github/unittest/helpers/coverage_run_parallel.py similarity index 100% rename from .circleci/unittest/helpers/coverage_run_parallel.py rename to .github/unittest/helpers/coverage_run_parallel.py diff --git a/.circleci/unittest/linux/scripts/10_nvidia.json b/.github/unittest/linux/scripts/10_nvidia.json similarity index 100% rename from .circleci/unittest/linux/scripts/10_nvidia.json rename to .github/unittest/linux/scripts/10_nvidia.json diff --git a/.circleci/unittest/linux/scripts/environment.yml b/.github/unittest/linux/scripts/environment.yml similarity index 100% rename from .circleci/unittest/linux/scripts/environment.yml rename to .github/unittest/linux/scripts/environment.yml diff --git a/.circleci/unittest/linux/scripts/post_process.sh b/.github/unittest/linux/scripts/post_process.sh similarity index 100% rename from .circleci/unittest/linux/scripts/post_process.sh rename to .github/unittest/linux/scripts/post_process.sh diff --git a/.circleci/unittest/linux/scripts/run-clang-format.py b/.github/unittest/linux/scripts/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux/scripts/run-clang-format.py rename to .github/unittest/linux/scripts/run-clang-format.py diff --git a/.circleci/unittest/linux/scripts/run_all.sh b/.github/unittest/linux/scripts/run_all.sh similarity index 97% rename from .circleci/unittest/linux/scripts/run_all.sh rename to .github/unittest/linux/scripts/run_all.sh index 43edc768011..06da0c3b2f0 100755 --- a/.circleci/unittest/linux/scripts/run_all.sh +++ b/.github/unittest/linux/scripts/run_all.sh @@ -183,10 +183,10 @@ export CKPT_BACKEND=torch pytest test/smoke_test.py -v --durations 200 pytest test/smoke_test_deps.py -v --durations 200 -k 'test_gym or test_dm_control_pixels or test_dm_control or test_tb' if [ "${CU_VERSION:-}" != cpu ] ; then - python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test \ + python .github/unittest/helpers/coverage_run_parallel.py -m pytest test \ --instafail --durations 200 --ignore test/test_rlhf.py else - python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test \ + python .github/unittest/helpers/coverage_run_parallel.py -m pytest test \ --instafail --durations 200 --ignore test/test_rlhf.py --ignore test/test_distributed.py fi diff --git a/.circleci/unittest/linux_distributed/scripts/environment.yml b/.github/unittest/linux_distributed/scripts/environment.yml similarity index 100% rename from .circleci/unittest/linux_distributed/scripts/environment.yml rename to .github/unittest/linux_distributed/scripts/environment.yml diff --git a/.circleci/unittest/linux_distributed/scripts/install.sh b/.github/unittest/linux_distributed/scripts/install.sh similarity index 100% rename from .circleci/unittest/linux_distributed/scripts/install.sh rename to .github/unittest/linux_distributed/scripts/install.sh diff --git a/.circleci/unittest/linux_distributed/scripts/post_process.sh b/.github/unittest/linux_distributed/scripts/post_process.sh similarity index 100% rename from .circleci/unittest/linux_distributed/scripts/post_process.sh rename to .github/unittest/linux_distributed/scripts/post_process.sh diff --git a/.circleci/unittest/linux_distributed/scripts/run-clang-format.py b/.github/unittest/linux_distributed/scripts/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux_distributed/scripts/run-clang-format.py rename to .github/unittest/linux_distributed/scripts/run-clang-format.py diff --git a/.circleci/unittest/linux_distributed/scripts/run_test.sh b/.github/unittest/linux_distributed/scripts/run_test.sh similarity index 57% rename from .circleci/unittest/linux_distributed/scripts/run_test.sh rename to .github/unittest/linux_distributed/scripts/run_test.sh index 88f09536622..211159de4e1 100755 --- a/.circleci/unittest/linux_distributed/scripts/run_test.sh +++ b/.github/unittest/linux_distributed/scripts/run_test.sh @@ -19,8 +19,8 @@ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$lib_dir export MKL_THREADING_LAYER=GNU export CKPT_BACKEND=torch -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test.py -v --durations 200 -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test_deps.py -v --durations 200 -k 'test_gym or test_dm_control_pixels or test_dm_control or test_tb' -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_distributed.py --instafail -v --durations 200 +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test.py -v --durations 200 +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test_deps.py -v --durations 200 -k 'test_gym or test_dm_control_pixels or test_dm_control or test_tb' +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/test_distributed.py --instafail -v --durations 200 coverage combine coverage xml -i diff --git a/.circleci/unittest/linux_distributed/scripts/setup_env.sh b/.github/unittest/linux_distributed/scripts/setup_env.sh similarity index 100% rename from .circleci/unittest/linux_distributed/scripts/setup_env.sh rename to .github/unittest/linux_distributed/scripts/setup_env.sh diff --git a/.circleci/unittest/linux_examples/scripts/10_nvidia.json b/.github/unittest/linux_examples/scripts/10_nvidia.json similarity index 100% rename from .circleci/unittest/linux_examples/scripts/10_nvidia.json rename to .github/unittest/linux_examples/scripts/10_nvidia.json diff --git a/.circleci/unittest/linux_examples/scripts/environment.yml b/.github/unittest/linux_examples/scripts/environment.yml similarity index 100% rename from .circleci/unittest/linux_examples/scripts/environment.yml rename to .github/unittest/linux_examples/scripts/environment.yml diff --git a/.circleci/unittest/linux_examples/scripts/post_process.sh b/.github/unittest/linux_examples/scripts/post_process.sh similarity index 100% rename from .circleci/unittest/linux_examples/scripts/post_process.sh rename to .github/unittest/linux_examples/scripts/post_process.sh diff --git a/.circleci/unittest/linux_examples/scripts/run-clang-format.py b/.github/unittest/linux_examples/scripts/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux_examples/scripts/run-clang-format.py rename to .github/unittest/linux_examples/scripts/run-clang-format.py diff --git a/.circleci/unittest/linux_examples/scripts/run_all.sh b/.github/unittest/linux_examples/scripts/run_all.sh similarity index 100% rename from .circleci/unittest/linux_examples/scripts/run_all.sh rename to .github/unittest/linux_examples/scripts/run_all.sh diff --git a/.circleci/unittest/linux_examples/scripts/run_local.sh b/.github/unittest/linux_examples/scripts/run_local.sh similarity index 73% rename from .circleci/unittest/linux_examples/scripts/run_local.sh rename to .github/unittest/linux_examples/scripts/run_local.sh index 9fd521add7a..afeda5f54eb 100755 --- a/.circleci/unittest/linux_examples/scripts/run_local.sh +++ b/.github/unittest/linux_examples/scripts/run_local.sh @@ -3,7 +3,7 @@ set -e # Read script from line 29 -filename=".circleci/unittest/linux_examples/scripts/run_test.sh" +filename=".github/unittest/linux_examples/scripts/run_test.sh" start_line=29 script=$(tail -n +$start_line "$filename") script="set -e"$'\n'"$script" @@ -11,7 +11,7 @@ script="set -e"$'\n'"$script" # Replace "cuda:0" with "cpu" script="${script//cuda:0/cpu}" -# Remove any instances of ".circleci/unittest/helpers/coverage_run_parallel.py" +# Remove any instances of ".github/unittest/helpers/coverage_run_parallel.py" script="${script//.circleci\/unittest\/helpers\/coverage_run_parallel.py}" script="${script//coverage combine}" script="${script//coverage xml -i}" diff --git a/.circleci/unittest/linux_examples/scripts/run_test.sh b/.github/unittest/linux_examples/scripts/run_test.sh similarity index 73% rename from .circleci/unittest/linux_examples/scripts/run_test.sh rename to .github/unittest/linux_examples/scripts/run_test.sh index ba4a7b31b85..d81e90fdd42 100755 --- a/.circleci/unittest/linux_examples/scripts/run_test.sh +++ b/.github/unittest/linux_examples/scripts/run_test.sh @@ -25,20 +25,20 @@ lib_dir="${env_dir}/lib" export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$lib_dir export MKL_THREADING_LAYER=GNU -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test.py -v --durations 200 -#python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test_deps.py -v --durations 200 +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test.py -v --durations 200 +#python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test_deps.py -v --durations 200 # ==================================================================================== # # ================================ gym 0.23 ========================================== # # With batched environments -python .circleci/unittest/helpers/coverage_run_parallel.py examples/decision_transformer/dt.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/decision_transformer/dt.py \ optim.pretrain_gradient_steps=55 \ optim.updates_per_episode=3 \ optim.warmup_steps=10 \ optim.device=cuda:0 \ logger.backend= -python .circleci/unittest/helpers/coverage_run_parallel.py examples/decision_transformer/online_dt.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/decision_transformer/online_dt.py \ optim.pretrain_gradient_steps=55 \ optim.updates_per_episode=3 \ optim.warmup_steps=10 \ @@ -48,7 +48,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/decision_tra # ==================================================================================== # # ================================ Gymnasium ========================================= # -python .circleci/unittest/helpers/coverage_run_parallel.py examples/ppo/ppo.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/ppo/ppo.py \ env.num_envs=1 \ env.device=cuda:0 \ collector.total_frames=48 \ @@ -60,7 +60,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/ppo/ppo.py \ logger.backend= \ logger.log_interval=4 \ optim.lr_scheduler=False -python .circleci/unittest/helpers/coverage_run_parallel.py examples/ddpg/ddpg.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/ddpg/ddpg.py \ collector.total_frames=48 \ collector.init_random_frames=10 \ optimization.batch_size=10 \ @@ -75,7 +75,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/ddpg/ddpg.py logger.backend= # record_video=True \ # record_frames=4 \ -python .circleci/unittest/helpers/coverage_run_parallel.py examples/a2c/a2c.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/a2c/a2c.py \ env.num_envs=1 \ collector.total_frames=48 \ collector.frames_per_batch=16 \ @@ -84,7 +84,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/a2c/a2c.py \ logger.log_interval=4 \ optim.lr_scheduler=False \ optim.device=cuda:0 -python .circleci/unittest/helpers/coverage_run_parallel.py examples/dqn/dqn.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/dqn/dqn.py \ total_frames=48 \ init_random_frames=10 \ batch_size=10 \ @@ -96,7 +96,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/dqn/dqn.py \ record_video=True \ record_frames=4 \ buffer_size=120 -python .circleci/unittest/helpers/coverage_run_parallel.py examples/redq/redq.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/redq/redq.py \ total_frames=48 \ init_random_frames=10 \ batch_size=10 \ @@ -108,7 +108,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/redq/redq.py record_video=True \ record_frames=4 \ buffer_size=120 -python .circleci/unittest/helpers/coverage_run_parallel.py examples/sac/sac.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/sac/sac.py \ collector.total_frames=48 \ collector.init_random_frames=10 \ collector.frames_per_batch=16 \ @@ -122,7 +122,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/sac/sac.py \ logger.backend= # logger.record_video=True \ # logger.record_frames=4 \ -python .circleci/unittest/helpers/coverage_run_parallel.py examples/dreamer/dreamer.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/dreamer/dreamer.py \ total_frames=200 \ init_random_frames=10 \ batch_size=10 \ @@ -135,7 +135,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/dreamer/drea record_frames=4 \ buffer_size=120 \ rssm_hidden_dim=17 -python .circleci/unittest/helpers/coverage_run_parallel.py examples/td3/td3.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/td3/td3.py \ collector.total_frames=48 \ collector.init_random_frames=10 \ optimization.batch_size=10 \ @@ -147,7 +147,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/td3/td3.py \ logger.mode=offline \ env.name=Pendulum-v1 \ logger.backend= -python .circleci/unittest/helpers/coverage_run_parallel.py examples/iql/iql_online.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/iql/iql_online.py \ total_frames=48 \ batch_size=10 \ frames_per_batch=16 \ @@ -159,7 +159,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/iql/iql_onli logger= # With single envs -python .circleci/unittest/helpers/coverage_run_parallel.py examples/dreamer/dreamer.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/dreamer/dreamer.py \ total_frames=200 \ init_random_frames=10 \ batch_size=10 \ @@ -172,7 +172,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/dreamer/drea record_frames=4 \ buffer_size=120 \ rssm_hidden_dim=17 -python .circleci/unittest/helpers/coverage_run_parallel.py examples/ddpg/ddpg.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/ddpg/ddpg.py \ collector.total_frames=48 \ collector.init_random_frames=10 \ optimization.batch_size=10 \ @@ -187,7 +187,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/ddpg/ddpg.py logger.backend= # record_video=True \ # record_frames=4 \ -python .circleci/unittest/helpers/coverage_run_parallel.py examples/a2c/a2c.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/a2c/a2c.py \ env.num_envs=1 \ collector.total_frames=48 \ collector.frames_per_batch=16 \ @@ -196,7 +196,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/a2c/a2c.py \ logger.log_interval=4 \ optim.lr_scheduler=False \ optim.device=cuda:0 -python .circleci/unittest/helpers/coverage_run_parallel.py examples/dqn/dqn.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/dqn/dqn.py \ total_frames=48 \ init_random_frames=10 \ batch_size=10 \ @@ -208,7 +208,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/dqn/dqn.py \ record_video=True \ record_frames=4 \ buffer_size=120 -python .circleci/unittest/helpers/coverage_run_parallel.py examples/ppo/ppo.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/ppo/ppo.py \ env.num_envs=1 \ env.device=cuda:0 \ collector.total_frames=48 \ @@ -220,7 +220,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/ppo/ppo.py \ logger.backend= \ logger.log_interval=4 \ optim.lr_scheduler=False -python .circleci/unittest/helpers/coverage_run_parallel.py examples/redq/redq.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/redq/redq.py \ total_frames=48 \ init_random_frames=10 \ batch_size=10 \ @@ -232,7 +232,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/redq/redq.py record_video=True \ record_frames=4 \ buffer_size=120 -python .circleci/unittest/helpers/coverage_run_parallel.py examples/sac/sac.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/sac/sac.py \ collector.total_frames=48 \ collector.init_random_frames=10 \ collector.frames_per_batch=16 \ @@ -246,7 +246,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/sac/sac.py \ logger.backend= # record_video=True \ # record_frames=4 \ -python .circleci/unittest/helpers/coverage_run_parallel.py examples/iql/iql_online.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/iql/iql_online.py \ total_frames=48 \ batch_size=10 \ frames_per_batch=16 \ @@ -256,7 +256,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/iql/iql_onli device=cuda:0 \ collector_device=cuda:0 \ logger= -python .circleci/unittest/helpers/coverage_run_parallel.py examples/td3/td3.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/td3/td3.py \ collector.total_frames=48 \ collector.init_random_frames=10 \ optimization.batch_size=10 \ @@ -267,31 +267,31 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/td3/td3.py \ collector.collector_device=cuda:0 \ env.name=Pendulum-v1 \ logger.backend= -python .circleci/unittest/helpers/coverage_run_parallel.py examples/multiagent/mappo_ippo.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/multiagent/mappo_ippo.py \ collector.n_iters=2 \ collector.frames_per_batch=200 \ train.num_epochs=3 \ train.minibatch_size=100 \ logger.backend= -python .circleci/unittest/helpers/coverage_run_parallel.py examples/multiagent/maddpg_iddpg.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/multiagent/maddpg_iddpg.py \ collector.n_iters=2 \ collector.frames_per_batch=200 \ train.num_epochs=3 \ train.minibatch_size=100 \ logger.backend= -python .circleci/unittest/helpers/coverage_run_parallel.py examples/multiagent/iql.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/multiagent/iql.py \ collector.n_iters=2 \ collector.frames_per_batch=200 \ train.num_epochs=3 \ train.minibatch_size=100 \ logger.backend= -python .circleci/unittest/helpers/coverage_run_parallel.py examples/multiagent/qmix_vdn.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/multiagent/qmix_vdn.py \ collector.n_iters=2 \ collector.frames_per_batch=200 \ train.num_epochs=3 \ train.minibatch_size=100 \ logger.backend= -python .circleci/unittest/helpers/coverage_run_parallel.py examples/multiagent/sac.py \ +python .github/unittest/helpers/coverage_run_parallel.py examples/multiagent/sac.py \ collector.n_iters=2 \ collector.frames_per_batch=200 \ train.num_epochs=3 \ @@ -299,7 +299,7 @@ python .circleci/unittest/helpers/coverage_run_parallel.py examples/multiagent/s logger.backend= -python .circleci/unittest/helpers/coverage_run_parallel.py examples/bandits/dqn.py --n_steps=100 +python .github/unittest/helpers/coverage_run_parallel.py examples/bandits/dqn.py --n_steps=100 coverage combine coverage xml -i diff --git a/.circleci/unittest/linux_libs/scripts_brax/environment.yml b/.github/unittest/linux_libs/scripts_brax/environment.yml similarity index 100% rename from .circleci/unittest/linux_libs/scripts_brax/environment.yml rename to .github/unittest/linux_libs/scripts_brax/environment.yml diff --git a/.circleci/unittest/linux_libs/scripts_brax/install.sh b/.github/unittest/linux_libs/scripts_brax/install.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_brax/install.sh rename to .github/unittest/linux_libs/scripts_brax/install.sh diff --git a/.circleci/unittest/linux_libs/scripts_brax/post_process.sh b/.github/unittest/linux_libs/scripts_brax/post_process.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_brax/post_process.sh rename to .github/unittest/linux_libs/scripts_brax/post_process.sh diff --git a/.circleci/unittest/linux_libs/scripts_brax/run-clang-format.py b/.github/unittest/linux_libs/scripts_brax/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux_libs/scripts_brax/run-clang-format.py rename to .github/unittest/linux_libs/scripts_brax/run-clang-format.py diff --git a/.circleci/unittest/linux_libs/scripts_brax/run_all.sh b/.github/unittest/linux_libs/scripts_brax/run_all.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_brax/run_all.sh rename to .github/unittest/linux_libs/scripts_brax/run_all.sh diff --git a/.circleci/unittest/linux_libs/scripts_brax/run_test.sh b/.github/unittest/linux_libs/scripts_brax/run_test.sh similarity index 86% rename from .circleci/unittest/linux_libs/scripts_brax/run_test.sh rename to .github/unittest/linux_libs/scripts_brax/run_test.sh index 9fa45ae4737..6a4dac48331 100755 --- a/.circleci/unittest/linux_libs/scripts_brax/run_test.sh +++ b/.github/unittest/linux_libs/scripts_brax/run_test.sh @@ -30,6 +30,6 @@ python -c "import brax.envs" python -c "import jax" python3 -c 'import torch;t = torch.ones([2,2], device="cuda:0");print(t);print("tensor device:" + str(t.device))' -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestBrax --error-for-skips +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestBrax --error-for-skips coverage combine coverage xml -i diff --git a/.circleci/unittest/linux_libs/scripts_brax/setup_env.sh b/.github/unittest/linux_libs/scripts_brax/setup_env.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_brax/setup_env.sh rename to .github/unittest/linux_libs/scripts_brax/setup_env.sh diff --git a/.circleci/unittest/linux_libs/scripts_d4rl/environment.yml b/.github/unittest/linux_libs/scripts_d4rl/environment.yml similarity index 100% rename from .circleci/unittest/linux_libs/scripts_d4rl/environment.yml rename to .github/unittest/linux_libs/scripts_d4rl/environment.yml diff --git a/.circleci/unittest/linux_libs/scripts_d4rl/install.sh b/.github/unittest/linux_libs/scripts_d4rl/install.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_d4rl/install.sh rename to .github/unittest/linux_libs/scripts_d4rl/install.sh diff --git a/.circleci/unittest/linux_libs/scripts_d4rl/post_process.sh b/.github/unittest/linux_libs/scripts_d4rl/post_process.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_d4rl/post_process.sh rename to .github/unittest/linux_libs/scripts_d4rl/post_process.sh diff --git a/.circleci/unittest/linux_libs/scripts_d4rl/run-clang-format.py b/.github/unittest/linux_libs/scripts_d4rl/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux_libs/scripts_d4rl/run-clang-format.py rename to .github/unittest/linux_libs/scripts_d4rl/run-clang-format.py diff --git a/.circleci/unittest/linux_libs/scripts_d4rl/run_test.sh b/.github/unittest/linux_libs/scripts_d4rl/run_test.sh similarity index 86% rename from .circleci/unittest/linux_libs/scripts_d4rl/run_test.sh rename to .github/unittest/linux_libs/scripts_d4rl/run_test.sh index 6a8d7011866..92089852ed2 100755 --- a/.circleci/unittest/linux_libs/scripts_d4rl/run_test.sh +++ b/.github/unittest/linux_libs/scripts_d4rl/run_test.sh @@ -37,6 +37,6 @@ conda deactivate && conda activate ./env # this workflow only tests the libs python -c "import gym, d4rl" -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestD4RL --error-for-skips +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestD4RL --error-for-skips coverage combine coverage xml -i diff --git a/.circleci/unittest/linux_libs/scripts_d4rl/setup_env.sh b/.github/unittest/linux_libs/scripts_d4rl/setup_env.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_d4rl/setup_env.sh rename to .github/unittest/linux_libs/scripts_d4rl/setup_env.sh diff --git a/.circleci/unittest/linux_libs/scripts_envpool/environment.yml b/.github/unittest/linux_libs/scripts_envpool/environment.yml similarity index 100% rename from .circleci/unittest/linux_libs/scripts_envpool/environment.yml rename to .github/unittest/linux_libs/scripts_envpool/environment.yml diff --git a/.circleci/unittest/linux_libs/scripts_envpool/install.sh b/.github/unittest/linux_libs/scripts_envpool/install.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_envpool/install.sh rename to .github/unittest/linux_libs/scripts_envpool/install.sh diff --git a/.circleci/unittest/linux_libs/scripts_envpool/post_process.sh b/.github/unittest/linux_libs/scripts_envpool/post_process.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_envpool/post_process.sh rename to .github/unittest/linux_libs/scripts_envpool/post_process.sh diff --git a/.circleci/unittest/linux_libs/scripts_envpool/run-clang-format.py b/.github/unittest/linux_libs/scripts_envpool/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux_libs/scripts_envpool/run-clang-format.py rename to .github/unittest/linux_libs/scripts_envpool/run-clang-format.py diff --git a/.circleci/unittest/linux_libs/scripts_envpool/run_test.sh b/.github/unittest/linux_libs/scripts_envpool/run_test.sh similarity index 84% rename from .circleci/unittest/linux_libs/scripts_envpool/run_test.sh rename to .github/unittest/linux_libs/scripts_envpool/run_test.sh index b00c79527da..289adf454e7 100755 --- a/.circleci/unittest/linux_libs/scripts_envpool/run_test.sh +++ b/.github/unittest/linux_libs/scripts_envpool/run_test.sh @@ -27,6 +27,6 @@ export MKL_THREADING_LAYER=GNU # this workflow only tests the libs python -c "import envpool" -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestEnvPool --error-for-skips +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestEnvPool --error-for-skips coverage combine coverage xml -i diff --git a/.circleci/unittest/linux_libs/scripts_envpool/setup_env.sh b/.github/unittest/linux_libs/scripts_envpool/setup_env.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_envpool/setup_env.sh rename to .github/unittest/linux_libs/scripts_envpool/setup_env.sh diff --git a/.circleci/unittest/linux_libs/scripts_gym/batch_scripts.sh b/.github/unittest/linux_libs/scripts_gym/batch_scripts.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_gym/batch_scripts.sh rename to .github/unittest/linux_libs/scripts_gym/batch_scripts.sh diff --git a/.circleci/unittest/linux_libs/scripts_gym/environment.yml b/.github/unittest/linux_libs/scripts_gym/environment.yml similarity index 100% rename from .circleci/unittest/linux_libs/scripts_gym/environment.yml rename to .github/unittest/linux_libs/scripts_gym/environment.yml diff --git a/.circleci/unittest/linux_libs/scripts_gym/install.sh b/.github/unittest/linux_libs/scripts_gym/install.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_gym/install.sh rename to .github/unittest/linux_libs/scripts_gym/install.sh diff --git a/.circleci/unittest/linux_libs/scripts_gym/post_process.sh b/.github/unittest/linux_libs/scripts_gym/post_process.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_gym/post_process.sh rename to .github/unittest/linux_libs/scripts_gym/post_process.sh diff --git a/.circleci/unittest/linux_libs/scripts_gym/run-clang-format.py b/.github/unittest/linux_libs/scripts_gym/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux_libs/scripts_gym/run-clang-format.py rename to .github/unittest/linux_libs/scripts_gym/run-clang-format.py diff --git a/.circleci/unittest/linux_libs/scripts_gym/run_test.sh b/.github/unittest/linux_libs/scripts_gym/run_test.sh similarity index 57% rename from .circleci/unittest/linux_libs/scripts_gym/run_test.sh rename to .github/unittest/linux_libs/scripts_gym/run_test.sh index e057483afb0..2e5860468c3 100755 --- a/.circleci/unittest/linux_libs/scripts_gym/run_test.sh +++ b/.github/unittest/linux_libs/scripts_gym/run_test.sh @@ -17,11 +17,11 @@ lib_dir="${env_dir}/lib" export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$lib_dir export MKL_THREADING_LAYER=GNU -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test.py -v --durations 200 -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test_deps.py -v --durations 200 -k 'test_gym' +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test.py -v --durations 200 +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test_deps.py -v --durations 200 -k 'test_gym' export DISPLAY=':99.0' Xvfb :99 -screen 0 1400x900x24 > /dev/null 2>&1 & -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 -k "gym and not isaac" --error-for-skips +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 -k "gym and not isaac" --error-for-skips coverage combine coverage xml -i diff --git a/.circleci/unittest/linux_libs/scripts_gym/setup_env.sh b/.github/unittest/linux_libs/scripts_gym/setup_env.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_gym/setup_env.sh rename to .github/unittest/linux_libs/scripts_gym/setup_env.sh diff --git a/.circleci/unittest/linux_libs/scripts_habitat/10_nvidia.json b/.github/unittest/linux_libs/scripts_habitat/10_nvidia.json similarity index 100% rename from .circleci/unittest/linux_libs/scripts_habitat/10_nvidia.json rename to .github/unittest/linux_libs/scripts_habitat/10_nvidia.json diff --git a/.circleci/unittest/linux_libs/scripts_habitat/environment.yml b/.github/unittest/linux_libs/scripts_habitat/environment.yml similarity index 100% rename from .circleci/unittest/linux_libs/scripts_habitat/environment.yml rename to .github/unittest/linux_libs/scripts_habitat/environment.yml diff --git a/.circleci/unittest/linux_libs/scripts_habitat/install.sh b/.github/unittest/linux_libs/scripts_habitat/install.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_habitat/install.sh rename to .github/unittest/linux_libs/scripts_habitat/install.sh diff --git a/.circleci/unittest/linux_libs/scripts_habitat/post_process.sh b/.github/unittest/linux_libs/scripts_habitat/post_process.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_habitat/post_process.sh rename to .github/unittest/linux_libs/scripts_habitat/post_process.sh diff --git a/.circleci/unittest/linux_libs/scripts_habitat/run-clang-format.py b/.github/unittest/linux_libs/scripts_habitat/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux_libs/scripts_habitat/run-clang-format.py rename to .github/unittest/linux_libs/scripts_habitat/run-clang-format.py diff --git a/.circleci/unittest/linux_libs/scripts_habitat/run_all.sh b/.github/unittest/linux_libs/scripts_habitat/run_all.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_habitat/run_all.sh rename to .github/unittest/linux_libs/scripts_habitat/run_all.sh diff --git a/.circleci/unittest/linux_libs/scripts_habitat/run_test.sh b/.github/unittest/linux_libs/scripts_habitat/run_test.sh similarity index 90% rename from .circleci/unittest/linux_libs/scripts_habitat/run_test.sh rename to .github/unittest/linux_libs/scripts_habitat/run_test.sh index 1f916fea9c1..5c9becfe832 100755 --- a/.circleci/unittest/linux_libs/scripts_habitat/run_test.sh +++ b/.github/unittest/linux_libs/scripts_habitat/run_test.sh @@ -47,6 +47,6 @@ env = HabitatEnv('HabitatRenderPick-v0') env.reset() """ -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestHabitat --error-for-skips +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestHabitat --error-for-skips coverage combine coverage xml -i diff --git a/.circleci/unittest/linux_libs/scripts_habitat/setup_env.sh b/.github/unittest/linux_libs/scripts_habitat/setup_env.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_habitat/setup_env.sh rename to .github/unittest/linux_libs/scripts_habitat/setup_env.sh diff --git a/.circleci/unittest/linux_libs/scripts_jumanji/environment.yml b/.github/unittest/linux_libs/scripts_jumanji/environment.yml similarity index 100% rename from .circleci/unittest/linux_libs/scripts_jumanji/environment.yml rename to .github/unittest/linux_libs/scripts_jumanji/environment.yml diff --git a/.circleci/unittest/linux_libs/scripts_jumanji/install.sh b/.github/unittest/linux_libs/scripts_jumanji/install.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_jumanji/install.sh rename to .github/unittest/linux_libs/scripts_jumanji/install.sh diff --git a/.circleci/unittest/linux_libs/scripts_jumanji/post_process.sh b/.github/unittest/linux_libs/scripts_jumanji/post_process.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_jumanji/post_process.sh rename to .github/unittest/linux_libs/scripts_jumanji/post_process.sh diff --git a/.circleci/unittest/linux_libs/scripts_jumanji/run-clang-format.py b/.github/unittest/linux_libs/scripts_jumanji/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux_libs/scripts_jumanji/run-clang-format.py rename to .github/unittest/linux_libs/scripts_jumanji/run-clang-format.py diff --git a/.circleci/unittest/linux_libs/scripts_jumanji/run_test.sh b/.github/unittest/linux_libs/scripts_jumanji/run_test.sh similarity index 83% rename from .circleci/unittest/linux_libs/scripts_jumanji/run_test.sh rename to .github/unittest/linux_libs/scripts_jumanji/run_test.sh index 4b9bb270727..67f86ed73ee 100755 --- a/.circleci/unittest/linux_libs/scripts_jumanji/run_test.sh +++ b/.github/unittest/linux_libs/scripts_jumanji/run_test.sh @@ -28,6 +28,6 @@ export MAGNUM_LOG=verbose MAGNUM_GPU_VALIDATION=ON # this workflow only tests the libs python -c "import jumanji" -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestJumanji --error-for-skips +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestJumanji --error-for-skips coverage combine coverage xml -i diff --git a/.circleci/unittest/linux_libs/scripts_jumanji/setup_env.sh b/.github/unittest/linux_libs/scripts_jumanji/setup_env.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_jumanji/setup_env.sh rename to .github/unittest/linux_libs/scripts_jumanji/setup_env.sh diff --git a/.circleci/unittest/linux_libs/scripts_rlhf/environment.yml b/.github/unittest/linux_libs/scripts_rlhf/environment.yml similarity index 100% rename from .circleci/unittest/linux_libs/scripts_rlhf/environment.yml rename to .github/unittest/linux_libs/scripts_rlhf/environment.yml diff --git a/.circleci/unittest/linux_libs/scripts_rlhf/install.sh b/.github/unittest/linux_libs/scripts_rlhf/install.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_rlhf/install.sh rename to .github/unittest/linux_libs/scripts_rlhf/install.sh diff --git a/.circleci/unittest/linux_libs/scripts_rlhf/post_process.sh b/.github/unittest/linux_libs/scripts_rlhf/post_process.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_rlhf/post_process.sh rename to .github/unittest/linux_libs/scripts_rlhf/post_process.sh diff --git a/.circleci/unittest/linux_libs/scripts_rlhf/run-clang-format.py b/.github/unittest/linux_libs/scripts_rlhf/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux_libs/scripts_rlhf/run-clang-format.py rename to .github/unittest/linux_libs/scripts_rlhf/run-clang-format.py diff --git a/.circleci/unittest/linux_libs/scripts_rlhf/run_test.sh b/.github/unittest/linux_libs/scripts_rlhf/run_test.sh similarity index 78% rename from .circleci/unittest/linux_libs/scripts_rlhf/run_test.sh rename to .github/unittest/linux_libs/scripts_rlhf/run_test.sh index 641838e6612..7dcf6629b90 100755 --- a/.circleci/unittest/linux_libs/scripts_rlhf/run_test.sh +++ b/.github/unittest/linux_libs/scripts_rlhf/run_test.sh @@ -21,6 +21,6 @@ conda deactivate && conda activate ./env python -c "import transformers, datasets" -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_rlhf.py --instafail -v --durations 200 --capture no --error-for-skips +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/test_rlhf.py --instafail -v --durations 200 --capture no --error-for-skips coverage combine coverage xml -i diff --git a/.circleci/unittest/linux_libs/scripts_rlhf/setup_env.sh b/.github/unittest/linux_libs/scripts_rlhf/setup_env.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_rlhf/setup_env.sh rename to .github/unittest/linux_libs/scripts_rlhf/setup_env.sh diff --git a/.circleci/unittest/linux_libs/scripts_robohive/environment.yml b/.github/unittest/linux_libs/scripts_robohive/environment.yml similarity index 100% rename from .circleci/unittest/linux_libs/scripts_robohive/environment.yml rename to .github/unittest/linux_libs/scripts_robohive/environment.yml diff --git a/.circleci/unittest/linux_libs/scripts_robohive/install_and_run_test.sh b/.github/unittest/linux_libs/scripts_robohive/install_and_run_test.sh similarity index 89% rename from .circleci/unittest/linux_libs/scripts_robohive/install_and_run_test.sh rename to .github/unittest/linux_libs/scripts_robohive/install_and_run_test.sh index 55be1340bab..08548f9a4bf 100755 --- a/.circleci/unittest/linux_libs/scripts_robohive/install_and_run_test.sh +++ b/.github/unittest/linux_libs/scripts_robohive/install_and_run_test.sh @@ -70,7 +70,7 @@ lib_dir="${env_dir}/lib" export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$lib_dir export MKL_THREADING_LAYER=GNU -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test.py -v --durations 20 +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test.py -v --durations 20 # let's make sure we have a GPU at our disposal python -c """ @@ -83,6 +83,6 @@ print('device count', devcount) echo $MUJOCO_GL echo $sim_backend -sim_backend=MUJOCO MUJOCO_GL=egl python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 20 -k "robohive" --error-for-skips +sim_backend=MUJOCO MUJOCO_GL=egl python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 20 -k "robohive" --error-for-skips coverage combine coverage xml -i diff --git a/.circleci/unittest/linux_libs/scripts_robohive/post_process.sh b/.github/unittest/linux_libs/scripts_robohive/post_process.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_robohive/post_process.sh rename to .github/unittest/linux_libs/scripts_robohive/post_process.sh diff --git a/.circleci/unittest/linux_libs/scripts_robohive/run-clang-format.py b/.github/unittest/linux_libs/scripts_robohive/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux_libs/scripts_robohive/run-clang-format.py rename to .github/unittest/linux_libs/scripts_robohive/run-clang-format.py diff --git a/.circleci/unittest/linux_libs/scripts_robohive/setup_env.sh b/.github/unittest/linux_libs/scripts_robohive/setup_env.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_robohive/setup_env.sh rename to .github/unittest/linux_libs/scripts_robohive/setup_env.sh diff --git a/.circleci/unittest/linux_libs/scripts_sklearn/environment.yml b/.github/unittest/linux_libs/scripts_sklearn/environment.yml similarity index 100% rename from .circleci/unittest/linux_libs/scripts_sklearn/environment.yml rename to .github/unittest/linux_libs/scripts_sklearn/environment.yml diff --git a/.circleci/unittest/linux_libs/scripts_sklearn/install.sh b/.github/unittest/linux_libs/scripts_sklearn/install.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_sklearn/install.sh rename to .github/unittest/linux_libs/scripts_sklearn/install.sh diff --git a/.circleci/unittest/linux_libs/scripts_sklearn/post_process.sh b/.github/unittest/linux_libs/scripts_sklearn/post_process.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_sklearn/post_process.sh rename to .github/unittest/linux_libs/scripts_sklearn/post_process.sh diff --git a/.circleci/unittest/linux_libs/scripts_sklearn/run-clang-format.py b/.github/unittest/linux_libs/scripts_sklearn/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux_libs/scripts_sklearn/run-clang-format.py rename to .github/unittest/linux_libs/scripts_sklearn/run-clang-format.py diff --git a/.circleci/unittest/linux_libs/scripts_sklearn/run_test.sh b/.github/unittest/linux_libs/scripts_sklearn/run_test.sh similarity index 77% rename from .circleci/unittest/linux_libs/scripts_sklearn/run_test.sh rename to .github/unittest/linux_libs/scripts_sklearn/run_test.sh index 56830393799..ef9b119cbc0 100755 --- a/.circleci/unittest/linux_libs/scripts_sklearn/run_test.sh +++ b/.github/unittest/linux_libs/scripts_sklearn/run_test.sh @@ -22,6 +22,6 @@ conda deactivate && conda activate ./env # this workflow only tests the libs python -c "import sklearn, pandas" -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestOpenML --error-for-skips +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestOpenML --error-for-skips coverage combine coverage xml -i diff --git a/.circleci/unittest/linux_libs/scripts_sklearn/setup_env.sh b/.github/unittest/linux_libs/scripts_sklearn/setup_env.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_sklearn/setup_env.sh rename to .github/unittest/linux_libs/scripts_sklearn/setup_env.sh diff --git a/.circleci/unittest/linux_libs/scripts_vmas/environment.yml b/.github/unittest/linux_libs/scripts_vmas/environment.yml similarity index 100% rename from .circleci/unittest/linux_libs/scripts_vmas/environment.yml rename to .github/unittest/linux_libs/scripts_vmas/environment.yml diff --git a/.circleci/unittest/linux_libs/scripts_vmas/install.sh b/.github/unittest/linux_libs/scripts_vmas/install.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_vmas/install.sh rename to .github/unittest/linux_libs/scripts_vmas/install.sh diff --git a/.circleci/unittest/linux_libs/scripts_vmas/post_process.sh b/.github/unittest/linux_libs/scripts_vmas/post_process.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_vmas/post_process.sh rename to .github/unittest/linux_libs/scripts_vmas/post_process.sh diff --git a/.circleci/unittest/linux_libs/scripts_vmas/run-clang-format.py b/.github/unittest/linux_libs/scripts_vmas/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux_libs/scripts_vmas/run-clang-format.py rename to .github/unittest/linux_libs/scripts_vmas/run-clang-format.py diff --git a/.circleci/unittest/linux_libs/scripts_vmas/run_test.sh b/.github/unittest/linux_libs/scripts_vmas/run_test.sh similarity index 81% rename from .circleci/unittest/linux_libs/scripts_vmas/run_test.sh rename to .github/unittest/linux_libs/scripts_vmas/run_test.sh index dc2bd903c5f..66934039783 100755 --- a/.circleci/unittest/linux_libs/scripts_vmas/run_test.sh +++ b/.github/unittest/linux_libs/scripts_vmas/run_test.sh @@ -25,6 +25,6 @@ export MAGNUM_LOG=verbose MAGNUM_GPU_VALIDATION=ON # this workflow only tests the libs python -c "import vmas" -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestVmas --error-for-skips +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestVmas --error-for-skips coverage combine coverage xml -i diff --git a/.circleci/unittest/linux_libs/scripts_vmas/setup_env.sh b/.github/unittest/linux_libs/scripts_vmas/setup_env.sh similarity index 100% rename from .circleci/unittest/linux_libs/scripts_vmas/setup_env.sh rename to .github/unittest/linux_libs/scripts_vmas/setup_env.sh diff --git a/.circleci/unittest/linux_olddeps/scripts_gym_0_13/batch_scripts.sh b/.github/unittest/linux_olddeps/scripts_gym_0_13/batch_scripts.sh similarity index 100% rename from .circleci/unittest/linux_olddeps/scripts_gym_0_13/batch_scripts.sh rename to .github/unittest/linux_olddeps/scripts_gym_0_13/batch_scripts.sh diff --git a/.circleci/unittest/linux_olddeps/scripts_gym_0_13/environment.yml b/.github/unittest/linux_olddeps/scripts_gym_0_13/environment.yml similarity index 100% rename from .circleci/unittest/linux_olddeps/scripts_gym_0_13/environment.yml rename to .github/unittest/linux_olddeps/scripts_gym_0_13/environment.yml diff --git a/.circleci/unittest/linux_olddeps/scripts_gym_0_13/install.sh b/.github/unittest/linux_olddeps/scripts_gym_0_13/install.sh similarity index 100% rename from .circleci/unittest/linux_olddeps/scripts_gym_0_13/install.sh rename to .github/unittest/linux_olddeps/scripts_gym_0_13/install.sh diff --git a/.circleci/unittest/linux_olddeps/scripts_gym_0_13/post_process.sh b/.github/unittest/linux_olddeps/scripts_gym_0_13/post_process.sh similarity index 100% rename from .circleci/unittest/linux_olddeps/scripts_gym_0_13/post_process.sh rename to .github/unittest/linux_olddeps/scripts_gym_0_13/post_process.sh diff --git a/.circleci/unittest/linux_olddeps/scripts_gym_0_13/run-clang-format.py b/.github/unittest/linux_olddeps/scripts_gym_0_13/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux_olddeps/scripts_gym_0_13/run-clang-format.py rename to .github/unittest/linux_olddeps/scripts_gym_0_13/run-clang-format.py diff --git a/.circleci/unittest/linux_olddeps/scripts_gym_0_13/run_test.sh b/.github/unittest/linux_olddeps/scripts_gym_0_13/run_test.sh similarity index 62% rename from .circleci/unittest/linux_olddeps/scripts_gym_0_13/run_test.sh rename to .github/unittest/linux_olddeps/scripts_gym_0_13/run_test.sh index 50725b6bdc5..d0ca7e3e46d 100755 --- a/.circleci/unittest/linux_olddeps/scripts_gym_0_13/run_test.sh +++ b/.github/unittest/linux_olddeps/scripts_gym_0_13/run_test.sh @@ -19,12 +19,12 @@ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$lib_dir export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/pytorch/rl/mujoco-py/mujoco_py/binaries/linux/mujoco210/bin export MKL_THREADING_LAYER=GNU -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test.py -v --durations 200 -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test_deps.py -v --durations 200 -k 'test_gym or test_dm_control_pixels or test_dm_control' +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test.py -v --durations 200 +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/smoke_test_deps.py -v --durations 200 -k 'test_gym or test_dm_control_pixels or test_dm_control' export DISPLAY=':99.0' Xvfb :99 -screen 0 1400x900x24 > /dev/null 2>&1 & -CKPT_BACKEND=torch MUJOCO_GL=egl python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest --instafail -v --durations 200 --ignore test/test_distributed.py --ignore test/test_rlhf.py +CKPT_BACKEND=torch MUJOCO_GL=egl python .github/unittest/helpers/coverage_run_parallel.py -m pytest --instafail -v --durations 200 --ignore test/test_distributed.py --ignore test/test_rlhf.py #pytest --instafail -v --durations 200 #python test/test_libs.py coverage combine diff --git a/.circleci/unittest/linux_olddeps/scripts_gym_0_13/setup_env.sh b/.github/unittest/linux_olddeps/scripts_gym_0_13/setup_env.sh similarity index 100% rename from .circleci/unittest/linux_olddeps/scripts_gym_0_13/setup_env.sh rename to .github/unittest/linux_olddeps/scripts_gym_0_13/setup_env.sh diff --git a/.circleci/unittest/linux_optdeps/scripts/10_nvidia.json b/.github/unittest/linux_optdeps/scripts/10_nvidia.json similarity index 100% rename from .circleci/unittest/linux_optdeps/scripts/10_nvidia.json rename to .github/unittest/linux_optdeps/scripts/10_nvidia.json diff --git a/.circleci/unittest/linux_optdeps/scripts/environment.yml b/.github/unittest/linux_optdeps/scripts/environment.yml similarity index 100% rename from .circleci/unittest/linux_optdeps/scripts/environment.yml rename to .github/unittest/linux_optdeps/scripts/environment.yml diff --git a/.circleci/unittest/linux_optdeps/scripts/install.sh b/.github/unittest/linux_optdeps/scripts/install.sh similarity index 100% rename from .circleci/unittest/linux_optdeps/scripts/install.sh rename to .github/unittest/linux_optdeps/scripts/install.sh diff --git a/.circleci/unittest/linux_optdeps/scripts/post_process.sh b/.github/unittest/linux_optdeps/scripts/post_process.sh similarity index 100% rename from .circleci/unittest/linux_optdeps/scripts/post_process.sh rename to .github/unittest/linux_optdeps/scripts/post_process.sh diff --git a/.circleci/unittest/linux_optdeps/scripts/run-clang-format.py b/.github/unittest/linux_optdeps/scripts/run-clang-format.py similarity index 100% rename from .circleci/unittest/linux_optdeps/scripts/run-clang-format.py rename to .github/unittest/linux_optdeps/scripts/run-clang-format.py diff --git a/.circleci/unittest/linux_optdeps/scripts/run_all.sh b/.github/unittest/linux_optdeps/scripts/run_all.sh similarity index 100% rename from .circleci/unittest/linux_optdeps/scripts/run_all.sh rename to .github/unittest/linux_optdeps/scripts/run_all.sh diff --git a/.circleci/unittest/linux_optdeps/scripts/run_test.sh b/.github/unittest/linux_optdeps/scripts/run_test.sh similarity index 72% rename from .circleci/unittest/linux_optdeps/scripts/run_test.sh rename to .github/unittest/linux_optdeps/scripts/run_test.sh index 5424fd92374..e8f96dd2425 100755 --- a/.circleci/unittest/linux_optdeps/scripts/run_test.sh +++ b/.github/unittest/linux_optdeps/scripts/run_test.sh @@ -16,6 +16,6 @@ root_dir="$(git rev-parse --show-toplevel)" export MKL_THREADING_LAYER=GNU export CKPT_BACKEND=torch -MUJOCO_GL=egl python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest --instafail -v --durations 200 --ignore test/test_distributed.py --ignore test/test_rlhf.py +MUJOCO_GL=egl python .github/unittest/helpers/coverage_run_parallel.py -m pytest --instafail -v --durations 200 --ignore test/test_distributed.py --ignore test/test_rlhf.py coverage combine coverage xml -i diff --git a/.circleci/unittest/linux_optdeps/scripts/setup_env.sh b/.github/unittest/linux_optdeps/scripts/setup_env.sh similarity index 100% rename from .circleci/unittest/linux_optdeps/scripts/setup_env.sh rename to .github/unittest/linux_optdeps/scripts/setup_env.sh diff --git a/.circleci/unittest/windows_optdepts/scripts/environment.yml b/.github/unittest/windows_optdepts/scripts/environment.yml similarity index 100% rename from .circleci/unittest/windows_optdepts/scripts/environment.yml rename to .github/unittest/windows_optdepts/scripts/environment.yml diff --git a/.circleci/unittest/windows_optdepts/scripts/install.sh b/.github/unittest/windows_optdepts/scripts/install.sh similarity index 100% rename from .circleci/unittest/windows_optdepts/scripts/install.sh rename to .github/unittest/windows_optdepts/scripts/install.sh diff --git a/.circleci/unittest/windows_optdepts/scripts/install_conda.bat b/.github/unittest/windows_optdepts/scripts/install_conda.bat similarity index 100% rename from .circleci/unittest/windows_optdepts/scripts/install_conda.bat rename to .github/unittest/windows_optdepts/scripts/install_conda.bat diff --git a/.circleci/unittest/windows_optdepts/scripts/post_process.sh b/.github/unittest/windows_optdepts/scripts/post_process.sh similarity index 100% rename from .circleci/unittest/windows_optdepts/scripts/post_process.sh rename to .github/unittest/windows_optdepts/scripts/post_process.sh diff --git a/.circleci/unittest/windows_optdepts/scripts/run_test.sh b/.github/unittest/windows_optdepts/scripts/run_test.sh similarity index 100% rename from .circleci/unittest/windows_optdepts/scripts/run_test.sh rename to .github/unittest/windows_optdepts/scripts/run_test.sh diff --git a/.circleci/unittest/windows_optdepts/scripts/set_cuda_envs.sh b/.github/unittest/windows_optdepts/scripts/set_cuda_envs.sh similarity index 100% rename from .circleci/unittest/windows_optdepts/scripts/set_cuda_envs.sh rename to .github/unittest/windows_optdepts/scripts/set_cuda_envs.sh diff --git a/.circleci/unittest/windows_optdepts/scripts/setup_env.sh b/.github/unittest/windows_optdepts/scripts/setup_env.sh similarity index 100% rename from .circleci/unittest/windows_optdepts/scripts/setup_env.sh rename to .github/unittest/windows_optdepts/scripts/setup_env.sh diff --git a/.circleci/unittest/windows_optdepts/scripts/vc_env_helper.bat b/.github/unittest/windows_optdepts/scripts/vc_env_helper.bat similarity index 100% rename from .circleci/unittest/windows_optdepts/scripts/vc_env_helper.bat rename to .github/unittest/windows_optdepts/scripts/vc_env_helper.bat diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index e43be123024..c9020a04841 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -66,7 +66,7 @@ jobs: echo '::group::Lint C source' set +e - ./.circleci/unittest/linux/scripts/run-clang-format.py -r torchrl/csrc --clang-format-executable ./clang-format + ./.github/unittest/linux/scripts/run-clang-format.py -r torchrl/csrc --clang-format-executable ./clang-format if [ $? -ne 0 ]; then git --no-pager diff diff --git a/.github/workflows/test-linux-brax.yml b/.github/workflows/test-linux-brax.yml index 0554b5e6ab1..0a09306f313 100644 --- a/.github/workflows/test-linux-brax.yml +++ b/.github/workflows/test-linux-brax.yml @@ -35,4 +35,4 @@ jobs: nvidia-smi - bash .circleci/unittest/linux_libs/scripts_brax/run_all.sh + bash .github/unittest/linux_libs/scripts_brax/run_all.sh diff --git a/.github/workflows/test-linux-cpu.yml b/.github/workflows/test-linux-cpu.yml index f3490ee474b..a8a349bf478 100644 --- a/.github/workflows/test-linux-cpu.yml +++ b/.github/workflows/test-linux-cpu.yml @@ -40,4 +40,4 @@ jobs: echo "CU_VERSION: $CU_VERSION" ## setup_env.sh - bash .circleci/unittest/linux/scripts/run_all.sh + bash .github/unittest/linux/scripts/run_all.sh diff --git a/.github/workflows/test-linux-d4rl.yml b/.github/workflows/test-linux-d4rl.yml index e9e5261d510..a5acce1f5c9 100644 --- a/.github/workflows/test-linux-d4rl.yml +++ b/.github/workflows/test-linux-d4rl.yml @@ -31,7 +31,7 @@ jobs: export UPLOAD_CHANNEL="nightly" export TF_CPP_MIN_LOG_LEVEL=0 - bash .circleci/unittest/linux_libs/scripts_d4rl/setup_env.sh - bash .circleci/unittest/linux_libs/scripts_d4rl/install.sh - bash .circleci/unittest/linux_libs/scripts_d4rl/run_test.sh - bash .circleci/unittest/linux_libs/scripts_d4rl/post_process.sh + bash .github/unittest/linux_libs/scripts_d4rl/setup_env.sh + bash .github/unittest/linux_libs/scripts_d4rl/install.sh + bash .github/unittest/linux_libs/scripts_d4rl/run_test.sh + bash .github/unittest/linux_libs/scripts_d4rl/post_process.sh diff --git a/.github/workflows/test-linux-envpool.yml b/.github/workflows/test-linux-envpool.yml index de78feb8a44..3b1072c9395 100644 --- a/.github/workflows/test-linux-envpool.yml +++ b/.github/workflows/test-linux-envpool.yml @@ -30,7 +30,7 @@ jobs: nvidia-smi - bash .circleci/unittest/linux_libs/scripts_envpool/setup_env.sh - bash .circleci/unittest/linux_libs/scripts_envpool/install.sh - bash .circleci/unittest/linux_libs/scripts_envpool/run_test.sh - bash .circleci/unittest/linux_libs/scripts_envpool/post_process.sh + bash .github/unittest/linux_libs/scripts_envpool/setup_env.sh + bash .github/unittest/linux_libs/scripts_envpool/install.sh + bash .github/unittest/linux_libs/scripts_envpool/run_test.sh + bash .github/unittest/linux_libs/scripts_envpool/post_process.sh diff --git a/.github/workflows/test-linux-examples.yml b/.github/workflows/test-linux-examples.yml index 979f047d100..60c64510cb3 100644 --- a/.github/workflows/test-linux-examples.yml +++ b/.github/workflows/test-linux-examples.yml @@ -46,4 +46,4 @@ jobs: echo "CU_VERSION: $CU_VERSION" ## setup_env.sh - bash .circleci/unittest/linux_examples/scripts/run_all.sh + bash .github/unittest/linux_examples/scripts/run_all.sh diff --git a/.github/workflows/test-linux-gpu.yml b/.github/workflows/test-linux-gpu.yml index b5e1577d65f..355271ad078 100644 --- a/.github/workflows/test-linux-gpu.yml +++ b/.github/workflows/test-linux-gpu.yml @@ -47,4 +47,4 @@ jobs: echo "CU_VERSION: $CU_VERSION" ## setup_env.sh - bash .circleci/unittest/linux/scripts/run_all.sh + bash .github/unittest/linux/scripts/run_all.sh diff --git a/.github/workflows/test-linux-gym.yml b/.github/workflows/test-linux-gym.yml index 7dce5ca0e52..0345955808f 100644 --- a/.github/workflows/test-linux-gym.yml +++ b/.github/workflows/test-linux-gym.yml @@ -33,6 +33,6 @@ jobs: export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/work/mujoco-py/mujoco_py/binaries/linux/mujoco210/bin" export TAR_OPTIONS="--no-same-owner" - ./.circleci/unittest/linux_libs/scripts_gym/setup_env.sh - ./.circleci/unittest/linux_libs/scripts_gym/batch_scripts.sh - ./.circleci/unittest/linux_libs/scripts_gym/post_process.sh + ./.github/unittest/linux_libs/scripts_gym/setup_env.sh + ./.github/unittest/linux_libs/scripts_gym/batch_scripts.sh + ./.github/unittest/linux_libs/scripts_gym/post_process.sh diff --git a/.github/workflows/test-linux-habitat.yml b/.github/workflows/test-linux-habitat.yml index 1a2ab19d062..734052241d6 100644 --- a/.github/workflows/test-linux-habitat.yml +++ b/.github/workflows/test-linux-habitat.yml @@ -39,4 +39,4 @@ jobs: # Remove the following line when the GPU tests are working inside docker, and uncomment the above lines #export CU_VERSION="cpu" - bash .circleci/unittest/linux_libs/scripts_habitat/run_all.sh + bash .github/unittest/linux_libs/scripts_habitat/run_all.sh diff --git a/.github/workflows/test-linux-jumanji.yml b/.github/workflows/test-linux-jumanji.yml index 56782eb52d2..a1ca1eb6a41 100644 --- a/.github/workflows/test-linux-jumanji.yml +++ b/.github/workflows/test-linux-jumanji.yml @@ -34,7 +34,7 @@ jobs: nvidia-smi - bash .circleci/unittest/linux_libs/scripts_jumanji/setup_env.sh - bash .circleci/unittest/linux_libs/scripts_jumanji/install.sh - bash .circleci/unittest/linux_libs/scripts_jumanji/run_test.sh - bash .circleci/unittest/linux_libs/scripts_jumanji/post_process.sh + bash .github/unittest/linux_libs/scripts_jumanji/setup_env.sh + bash .github/unittest/linux_libs/scripts_jumanji/install.sh + bash .github/unittest/linux_libs/scripts_jumanji/run_test.sh + bash .github/unittest/linux_libs/scripts_jumanji/post_process.sh diff --git a/.github/workflows/test-linux-olddeps.yml b/.github/workflows/test-linux-olddeps.yml index 0797d103fc0..9f54d9dda25 100644 --- a/.github/workflows/test-linux-olddeps.yml +++ b/.github/workflows/test-linux-olddeps.yml @@ -28,6 +28,6 @@ jobs: export TF_CPP_MIN_LOG_LEVEL=0 - bash .circleci/unittest/linux_olddeps/scripts_gym_0_13/setup_env.sh - bash .circleci/unittest/linux_olddeps/scripts_gym_0_13/batch_scripts.sh - bash .circleci/unittest/linux_olddeps/scripts_gym_0_13/post_process.sh + bash .github/unittest/linux_olddeps/scripts_gym_0_13/setup_env.sh + bash .github/unittest/linux_olddeps/scripts_gym_0_13/batch_scripts.sh + bash .github/unittest/linux_olddeps/scripts_gym_0_13/post_process.sh diff --git a/.github/workflows/test-linux-optdeps.yml b/.github/workflows/test-linux-optdeps.yml index 0a2999a91e0..79aeb552472 100644 --- a/.github/workflows/test-linux-optdeps.yml +++ b/.github/workflows/test-linux-optdeps.yml @@ -43,4 +43,4 @@ jobs: echo "CU_VERSION: $CU_VERSION" ## setup_env.sh - bash .circleci/unittest/linux_optdeps/scripts/run_all.sh + bash .github/unittest/linux_optdeps/scripts/run_all.sh diff --git a/.github/workflows/test-linux-rlhf.yml b/.github/workflows/test-linux-rlhf.yml index 5557d066d2c..86040ae9679 100644 --- a/.github/workflows/test-linux-rlhf.yml +++ b/.github/workflows/test-linux-rlhf.yml @@ -33,7 +33,7 @@ jobs: export UPLOAD_CHANNEL="nightly" export TF_CPP_MIN_LOG_LEVEL=0 - bash .circleci/unittest/linux_libs/scripts_rlhf/setup_env.sh - bash .circleci/unittest/linux_libs/scripts_rlhf/install.sh - bash .circleci/unittest/linux_libs/scripts_rlhf/run_test.sh - bash .circleci/unittest/linux_libs/scripts_rlhf/post_process.sh + bash .github/unittest/linux_libs/scripts_rlhf/setup_env.sh + bash .github/unittest/linux_libs/scripts_rlhf/install.sh + bash .github/unittest/linux_libs/scripts_rlhf/run_test.sh + bash .github/unittest/linux_libs/scripts_rlhf/post_process.sh diff --git a/.github/workflows/test-linux-robohive.yml b/.github/workflows/test-linux-robohive.yml index 55f33504e09..4793971d4a4 100644 --- a/.github/workflows/test-linux-robohive.yml +++ b/.github/workflows/test-linux-robohive.yml @@ -25,6 +25,6 @@ jobs: export UPLOAD_CHANNEL="nightly" export TF_CPP_MIN_LOG_LEVEL=0 - bash .circleci/unittest/linux_libs/scripts_robohive/setup_env.sh - bash .circleci/unittest/linux_libs/scripts_robohive/install_and_run_test.sh - bash .circleci/unittest/linux_libs/scripts_robohive/post_process.sh + bash .github/unittest/linux_libs/scripts_robohive/setup_env.sh + bash .github/unittest/linux_libs/scripts_robohive/install_and_run_test.sh + bash .github/unittest/linux_libs/scripts_robohive/post_process.sh diff --git a/.github/workflows/test-linux-sklearn.yml b/.github/workflows/test-linux-sklearn.yml index 53422d92115..9ad10a53297 100644 --- a/.github/workflows/test-linux-sklearn.yml +++ b/.github/workflows/test-linux-sklearn.yml @@ -33,7 +33,7 @@ jobs: export UPLOAD_CHANNEL="nightly" export TF_CPP_MIN_LOG_LEVEL=0 - bash .circleci/unittest/linux_libs/scripts_sklearn/setup_env.sh - bash .circleci/unittest/linux_libs/scripts_sklearn/install.sh - bash .circleci/unittest/linux_libs/scripts_sklearn/run_test.sh - bash .circleci/unittest/linux_libs/scripts_sklearn/post_process.sh + bash .github/unittest/linux_libs/scripts_sklearn/setup_env.sh + bash .github/unittest/linux_libs/scripts_sklearn/install.sh + bash .github/unittest/linux_libs/scripts_sklearn/run_test.sh + bash .github/unittest/linux_libs/scripts_sklearn/post_process.sh diff --git a/.github/workflows/test-linux-stable-gpu.yml b/.github/workflows/test-linux-stable-gpu.yml index cf2681b10ff..e779f4bd71f 100644 --- a/.github/workflows/test-linux-stable-gpu.yml +++ b/.github/workflows/test-linux-stable-gpu.yml @@ -47,4 +47,4 @@ jobs: echo "CU_VERSION: $CU_VERSION" ## setup_env.sh - bash .circleci/unittest/linux/scripts/run_all.sh + bash .github/unittest/linux/scripts/run_all.sh diff --git a/.github/workflows/test-linux-vmas.yml b/.github/workflows/test-linux-vmas.yml index c345c49572c..fc189b28f7f 100644 --- a/.github/workflows/test-linux-vmas.yml +++ b/.github/workflows/test-linux-vmas.yml @@ -34,7 +34,7 @@ jobs: nvidia-smi - bash .circleci/unittest/linux_libs/scripts_vmas/setup_env.sh - bash .circleci/unittest/linux_libs/scripts_vmas/install.sh - bash .circleci/unittest/linux_libs/scripts_vmas/run_test.sh - bash .circleci/unittest/linux_libs/scripts_vmas/post_process.sh + bash .github/unittest/linux_libs/scripts_vmas/setup_env.sh + bash .github/unittest/linux_libs/scripts_vmas/install.sh + bash .github/unittest/linux_libs/scripts_vmas/run_test.sh + bash .github/unittest/linux_libs/scripts_vmas/post_process.sh diff --git a/.github/workflows/test-macos-cpu.yml b/.github/workflows/test-macos-cpu.yml index 278125230cf..184cb7e9884 100644 --- a/.github/workflows/test-macos-cpu.yml +++ b/.github/workflows/test-macos-cpu.yml @@ -39,4 +39,4 @@ jobs: echo "CU_VERSION: $CU_VERSION" ## setup_env.sh - ./.circleci/unittest/linux/scripts/run_all.sh + ./.github/unittest/linux/scripts/run_all.sh diff --git a/.github/workflows/test-windows-optdepts-cpu.yml b/.github/workflows/test-windows-optdepts-cpu.yml index 70197687758..1cd161a84fb 100644 --- a/.github/workflows/test-windows-optdepts-cpu.yml +++ b/.github/workflows/test-windows-optdepts-cpu.yml @@ -35,13 +35,13 @@ jobs: echo "CU_VERSION: $CU_VERSION" ## setup_env.sh - ./.circleci/unittest/windows_optdepts/scripts/setup_env.sh + ./.github/unittest/windows_optdepts/scripts/setup_env.sh ## install.sh - ./.circleci/unittest/windows_optdepts/scripts/install.sh + ./.github/unittest/windows_optdepts/scripts/install.sh ## run_test.sh - ./.circleci/unittest/windows_optdepts/scripts/run_test.sh + ./.github/unittest/windows_optdepts/scripts/run_test.sh ## post_process.sh - ./.circleci/unittest/windows_optdepts/scripts/post_process.sh + ./.github/unittest/windows_optdepts/scripts/post_process.sh diff --git a/.github/workflows/test-windows-optdepts-gpu.yml b/.github/workflows/test-windows-optdepts-gpu.yml index 7f2f39d7b0e..652e816fd96 100644 --- a/.github/workflows/test-windows-optdepts-gpu.yml +++ b/.github/workflows/test-windows-optdepts-gpu.yml @@ -33,7 +33,7 @@ jobs: echo "PYTHON_VERSION: $PYTHON_VERSION" ## setup_env.sh - ./.circleci/unittest/windows_optdepts/scripts/setup_env.sh + ./.github/unittest/windows_optdepts/scripts/setup_env.sh ## Install CUDA packaging/windows/internal/cuda_install.bat @@ -42,10 +42,10 @@ jobs: packaging/windows/internal/driver_update.bat ## install.sh - ./.circleci/unittest/windows_optdepts/scripts/install.sh + ./.github/unittest/windows_optdepts/scripts/install.sh ## run_test.sh - ./.circleci/unittest/windows_optdepts/scripts/run_test.sh + ./.github/unittest/windows_optdepts/scripts/run_test.sh ## post_process.sh - ./.circleci/unittest/windows_optdepts/scripts/post_process.sh + ./.github/unittest/windows_optdepts/scripts/post_process.sh From 074ae61058f7b20f61bc14e0b20d9a5069937b65 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 8 Sep 2023 14:34:41 +0100 Subject: [PATCH 076/148] [Performance] Miscellaneous efficiency improvements (#1513) --- torchrl/data/tensor_specs.py | 4 ++-- torchrl/envs/common.py | 3 ++- torchrl/envs/gym_like.py | 2 +- torchrl/envs/transforms/transforms.py | 32 +++++++++++++-------------- torchrl/record/loggers/csv.py | 18 +++++++++++---- 5 files changed, 34 insertions(+), 25 deletions(-) diff --git a/torchrl/data/tensor_specs.py b/torchrl/data/tensor_specs.py index a4aa0278c55..559a34c1df1 100644 --- a/torchrl/data/tensor_specs.py +++ b/torchrl/data/tensor_specs.py @@ -555,10 +555,10 @@ def encode( val = torch.tensor(val, device=self.device, dtype=self.dtype) else: val = torch.as_tensor(val, dtype=self.dtype) - if val != self.shape: + if val.shape != self.shape: # if val.shape[-len(self.shape) :] != self.shape: # option 1: add a singleton dim at the end - if val == self.shape and self.shape[-1] == 1: + if val.shape == self.shape and self.shape[-1] == 1: val = val.unsqueeze(-1) else: try: diff --git a/torchrl/envs/common.py b/torchrl/envs/common.py index ad6df69cf78..5ecdf148238 100644 --- a/torchrl/envs/common.py +++ b/torchrl/envs/common.py @@ -231,6 +231,7 @@ def __init__( self.__dict__["_done_keys"] = None self.__dict__["_reward_keys"] = None self.__dict__["_action_keys"] = None + self.__dict__["_batch_size"] = None if device is not None: self.__dict__["_device"] = torch.device(device) output_spec = self.__dict__.get("_output_spec", None) @@ -320,7 +321,7 @@ def run_type_checks(self, run_type_checks: bool) -> None: @property def batch_size(self) -> torch.Size: - _batch_size = getattr(self, "_batch_size", None) + _batch_size = self.__dict__["_batch_size"] if _batch_size is None: _batch_size = self._batch_size = torch.Size([]) return _batch_size diff --git a/torchrl/envs/gym_like.py b/torchrl/envs/gym_like.py index 43eda6128bf..289bb731278 100644 --- a/torchrl/envs/gym_like.py +++ b/torchrl/envs/gym_like.py @@ -153,7 +153,7 @@ def read_reward(self, reward): reward (torch.Tensor or TensorDict): reward to be mapped. """ - return self.reward_spec.encode(reward) + return self.reward_spec.encode(reward, ignore_device=True) def read_obs( self, observations: Union[Dict[str, Any], torch.Tensor, np.ndarray] diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index 7ddb44b584e..e37e079e63b 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -730,23 +730,23 @@ def insert_transform(self, index: int, transform: Transform) -> None: self._erase_metadata() def __getattr__(self, attr: str) -> Any: - if attr in self.__dir__(): + try: return super().__getattr__( attr ) # make sure that appropriate exceptions are raised - elif attr.startswith("__"): + except Exception as err: + if attr.startswith("__"): + raise AttributeError( + "passing built-in private methods is " + f"not permitted with type {type(self)}. " + f"Got attribute {attr}." + ) + elif "base_env" in self.__dir__(): + base_env = self.__getattr__("base_env") + return getattr(base_env, attr) raise AttributeError( - "passing built-in private methods is " - f"not permitted with type {type(self)}. " - f"Got attribute {attr}." - ) - elif "base_env" in self.__dir__(): - base_env = self.__getattr__("base_env") - return getattr(base_env, attr) - - raise AttributeError( - f"env not set in {self.__class__.__name__}, cannot access {attr}" - ) + f"env not set in {self.__class__.__name__}, cannot access {attr}" + ) from err def __repr__(self) -> str: env_str = indent(f"env={self.base_env}", 4 * " ") @@ -3988,9 +3988,8 @@ def _step( for in_key, out_key in zip(self.in_keys, self.out_keys): if in_key in next_tensordict.keys(include_nested=True): reward = next_tensordict.get(in_key) - if out_key not in tensordict.keys(True): - tensordict.set(out_key, torch.zeros_like(reward)) - next_tensordict.set(out_key, tensordict.get(out_key) + reward) + prev_reward = tensordict.get(out_key, 0.0) + next_tensordict.set(out_key, prev_reward + reward) elif not self.missing_tolerance: raise KeyError(f"'{in_key}' not found in tensordict {tensordict}") return next_tensordict @@ -4154,7 +4153,6 @@ def reset(self, tensordict: TensorDictBase) -> TensorDictBase: def _step( self, tensordict: TensorDictBase, next_tensordict: TensorDictBase ) -> TensorDictBase: - tensordict = tensordict.clone(False) step_count = tensordict.get(self.step_count_key) next_step_count = step_count + 1 next_tensordict.set(self.step_count_key, next_step_count) diff --git a/torchrl/record/loggers/csv.py b/torchrl/record/loggers/csv.py index ea94444ddc2..b7157cc259a 100644 --- a/torchrl/record/loggers/csv.py +++ b/torchrl/record/loggers/csv.py @@ -26,14 +26,18 @@ def __init__(self, log_dir: str): os.makedirs(os.path.join(self.log_dir, "videos")) os.makedirs(os.path.join(self.log_dir, "texts")) + self.files = {} + def add_scalar(self, name: str, value: float, global_step: Optional[int] = None): if global_step is None: global_step = len(self.scalars[name]) value = float(value) self.scalars[name].append((global_step, value)) filepath = os.path.join(self.log_dir, "scalars", "".join([name, ".csv"])) - with open(filepath, "a") as fd: - fd.write(",".join([str(global_step), str(value)]) + "\n") + if filepath not in self.files: + self.files[filepath] = open(filepath, "a") + fd = self.files[filepath] + fd.write(",".join([str(global_step), str(value)]) + "\n") def add_video(self, tag, vid_tensor, global_step: Optional[int] = None, **kwargs): if global_step is None: @@ -53,12 +57,18 @@ def add_text(self, tag, text, global_step: Optional[int] = None): filepath = os.path.join( self.log_dir, "texts", "".join([tag, str(global_step)]) + ".txt" ) - with open(filepath, "w+") as f: - f.writelines(text) + if filepath not in self.files: + self.files[filepath] = open(filepath, "w+") + fd = self.files[filepath] + fd.writelines(text) def __repr__(self) -> str: return f"CSVExperiment(log_dir={self.log_dir})" + def __del__(self): + for val in getattr(self, "files", {}).values(): + val.close() + class CSVLogger(Logger): """A minimal-dependecy CSV-logger. From 3b3092916424501167ce5722314b13d091bdb9b9 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Thu, 14 Sep 2023 15:00:40 +0100 Subject: [PATCH 077/148] [Environment] Petting zoo (#1471) Signed-off-by: Matteo Bettini Co-authored-by: vmoens --- .../scripts_pettingzoo/environment.yml | 23 + .../linux_libs/scripts_pettingzoo/install.sh | 46 + .../scripts_pettingzoo/post_process.sh | 6 + .../scripts_pettingzoo/run-clang-format.py | 356 +++++++ .../linux_libs/scripts_pettingzoo/run_test.sh | 30 + .../scripts_pettingzoo/setup_env.sh | 53 ++ .github/workflows/test-linux-pettingzoo.yml | 40 + docs/source/reference/envs.rst | 13 + test/test_env.py | 25 +- test/test_libs.py | 220 ++++- torchrl/envs/__init__.py | 2 + torchrl/envs/common.py | 19 +- torchrl/envs/libs/pettingzoo.py | 878 ++++++++++++++++++ torchrl/envs/libs/vmas.py | 7 +- torchrl/envs/utils.py | 121 ++- 15 files changed, 1828 insertions(+), 11 deletions(-) create mode 100644 .github/unittest/linux_libs/scripts_pettingzoo/environment.yml create mode 100755 .github/unittest/linux_libs/scripts_pettingzoo/install.sh create mode 100755 .github/unittest/linux_libs/scripts_pettingzoo/post_process.sh create mode 100755 .github/unittest/linux_libs/scripts_pettingzoo/run-clang-format.py create mode 100755 .github/unittest/linux_libs/scripts_pettingzoo/run_test.sh create mode 100755 .github/unittest/linux_libs/scripts_pettingzoo/setup_env.sh create mode 100644 .github/workflows/test-linux-pettingzoo.yml create mode 100644 torchrl/envs/libs/pettingzoo.py diff --git a/.github/unittest/linux_libs/scripts_pettingzoo/environment.yml b/.github/unittest/linux_libs/scripts_pettingzoo/environment.yml new file mode 100644 index 00000000000..76f97355f7a --- /dev/null +++ b/.github/unittest/linux_libs/scripts_pettingzoo/environment.yml @@ -0,0 +1,23 @@ +channels: + - pytorch + - defaults +dependencies: + - pip + - swig + - pip: + - cloudpickle + - gym + - gym-notices + - importlib-metadata + - six + - zipp + - pytest + - pytest-cov + - pytest-mock + - pytest-instafail + - pytest-rerunfailures + - pytest-error-for-skips + - expecttest + - pyyaml + - autorom[accept-rom-license] + - pettingzoo[all]==1.24.1 diff --git a/.github/unittest/linux_libs/scripts_pettingzoo/install.sh b/.github/unittest/linux_libs/scripts_pettingzoo/install.sh new file mode 100755 index 00000000000..cb36c7cc48a --- /dev/null +++ b/.github/unittest/linux_libs/scripts_pettingzoo/install.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +unset PYTORCH_VERSION +# For unittest, nightly PyTorch is used as the following section, +# so no need to set PYTORCH_VERSION. +# In fact, keeping PYTORCH_VERSION forces us to hardcode PyTorch version in config. + +set -e + +eval "$(./conda/bin/conda shell.bash hook)" +conda activate ./env + +if [ "${CU_VERSION:-}" == cpu ] ; then + version="cpu" +else + if [[ ${#CU_VERSION} -eq 4 ]]; then + CUDA_VERSION="${CU_VERSION:2:1}.${CU_VERSION:3:1}" + elif [[ ${#CU_VERSION} -eq 5 ]]; then + CUDA_VERSION="${CU_VERSION:2:2}.${CU_VERSION:4:1}" + fi + echo "Using CUDA $CUDA_VERSION as determined by CU_VERSION ($CU_VERSION)" + version="$(python -c "print('.'.join(\"${CUDA_VERSION}\".split('.')[:2]))")" +fi + +# submodules +git submodule sync && git submodule update --init --recursive + +printf "Installing PyTorch with %s\n" "${CU_VERSION}" +if [ "${CU_VERSION:-}" == cpu ] ; then + # conda install -y pytorch torchvision cpuonly -c pytorch-nightly + # use pip to install pytorch as conda can frequently pick older release +# conda install -y pytorch cpuonly -c pytorch-nightly + pip3 install --pre torch --extra-index-url https://download.pytorch.org/whl/nightly/cpu --force-reinstall +else + pip3 install --pre torch --extra-index-url https://download.pytorch.org/whl/nightly/cu116 --force-reinstall +fi + +# install tensordict +pip install git+https://github.com/pytorch-labs/tensordict.git + +# smoke test +python -c "import tensordict" + +printf "* Installing torchrl\n" +python setup.py develop +python -c "import torchrl" diff --git a/.github/unittest/linux_libs/scripts_pettingzoo/post_process.sh b/.github/unittest/linux_libs/scripts_pettingzoo/post_process.sh new file mode 100755 index 00000000000..e97bf2a7b1b --- /dev/null +++ b/.github/unittest/linux_libs/scripts_pettingzoo/post_process.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +set -e + +eval "$(./conda/bin/conda shell.bash hook)" +conda activate ./env diff --git a/.github/unittest/linux_libs/scripts_pettingzoo/run-clang-format.py b/.github/unittest/linux_libs/scripts_pettingzoo/run-clang-format.py new file mode 100755 index 00000000000..5783a885d86 --- /dev/null +++ b/.github/unittest/linux_libs/scripts_pettingzoo/run-clang-format.py @@ -0,0 +1,356 @@ +#!/usr/bin/env python +""" +MIT License + +Copyright (c) 2017 Guillaume Papin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +A wrapper script around clang-format, suitable for linting multiple files +and to use for continuous integration. + +This is an alternative API for the clang-format command line. +It runs over multiple files and directories in parallel. +A diff output is produced and a sensible exit code is returned. + +""" + +import argparse +import difflib +import fnmatch +import multiprocessing +import os +import signal +import subprocess +import sys +import traceback +from functools import partial + +try: + from subprocess import DEVNULL # py3k +except ImportError: + DEVNULL = open(os.devnull, "wb") + + +DEFAULT_EXTENSIONS = "c,h,C,H,cpp,hpp,cc,hh,c++,h++,cxx,hxx,cu" + + +class ExitStatus: + SUCCESS = 0 + DIFF = 1 + TROUBLE = 2 + + +def list_files(files, recursive=False, extensions=None, exclude=None): + if extensions is None: + extensions = [] + if exclude is None: + exclude = [] + + out = [] + for file in files: + if recursive and os.path.isdir(file): + for dirpath, dnames, fnames in os.walk(file): + fpaths = [os.path.join(dirpath, fname) for fname in fnames] + for pattern in exclude: + # os.walk() supports trimming down the dnames list + # by modifying it in-place, + # to avoid unnecessary directory listings. + dnames[:] = [ + x + for x in dnames + if not fnmatch.fnmatch(os.path.join(dirpath, x), pattern) + ] + fpaths = [x for x in fpaths if not fnmatch.fnmatch(x, pattern)] + for f in fpaths: + ext = os.path.splitext(f)[1][1:] + if ext in extensions: + out.append(f) + else: + out.append(file) + return out + + +def make_diff(file, original, reformatted): + return list( + difflib.unified_diff( + original, + reformatted, + fromfile=f"{file}\t(original)", + tofile=f"{file}\t(reformatted)", + n=3, + ) + ) + + +class DiffError(Exception): + def __init__(self, message, errs=None): + super().__init__(message) + self.errs = errs or [] + + +class UnexpectedError(Exception): + def __init__(self, message, exc=None): + super().__init__(message) + self.formatted_traceback = traceback.format_exc() + self.exc = exc + + +def run_clang_format_diff_wrapper(args, file): + try: + ret = run_clang_format_diff(args, file) + return ret + except DiffError: + raise + except Exception as e: + raise UnexpectedError(f"{file}: {e.__class__.__name__}: {e}", e) + + +def run_clang_format_diff(args, file): + try: + with open(file, encoding="utf-8") as f: + original = f.readlines() + except OSError as exc: + raise DiffError(str(exc)) + invocation = [args.clang_format_executable, file] + + # Use of utf-8 to decode the process output. + # + # Hopefully, this is the correct thing to do. + # + # It's done due to the following assumptions (which may be incorrect): + # - clang-format will returns the bytes read from the files as-is, + # without conversion, and it is already assumed that the files use utf-8. + # - if the diagnostics were internationalized, they would use utf-8: + # > Adding Translations to Clang + # > + # > Not possible yet! + # > Diagnostic strings should be written in UTF-8, + # > the client can translate to the relevant code page if needed. + # > Each translation completely replaces the format string + # > for the diagnostic. + # > -- http://clang.llvm.org/docs/InternalsManual.html#internals-diag-translation + + try: + proc = subprocess.Popen( + invocation, + stdout=subprocess.PIPE, + stderr=subprocess.PIPE, + universal_newlines=True, + encoding="utf-8", + ) + except OSError as exc: + raise DiffError( + f"Command '{subprocess.list2cmdline(invocation)}' failed to start: {exc}" + ) + proc_stdout = proc.stdout + proc_stderr = proc.stderr + + # hopefully the stderr pipe won't get full and block the process + outs = list(proc_stdout.readlines()) + errs = list(proc_stderr.readlines()) + proc.wait() + if proc.returncode: + raise DiffError( + "Command '{}' returned non-zero exit status {}".format( + subprocess.list2cmdline(invocation), proc.returncode + ), + errs, + ) + return make_diff(file, original, outs), errs + + +def bold_red(s): + return "\x1b[1m\x1b[31m" + s + "\x1b[0m" + + +def colorize(diff_lines): + def bold(s): + return "\x1b[1m" + s + "\x1b[0m" + + def cyan(s): + return "\x1b[36m" + s + "\x1b[0m" + + def green(s): + return "\x1b[32m" + s + "\x1b[0m" + + def red(s): + return "\x1b[31m" + s + "\x1b[0m" + + for line in diff_lines: + if line[:4] in ["--- ", "+++ "]: + yield bold(line) + elif line.startswith("@@ "): + yield cyan(line) + elif line.startswith("+"): + yield green(line) + elif line.startswith("-"): + yield red(line) + else: + yield line + + +def print_diff(diff_lines, use_color): + if use_color: + diff_lines = colorize(diff_lines) + sys.stdout.writelines(diff_lines) + + +def print_trouble(prog, message, use_colors): + error_text = "error:" + if use_colors: + error_text = bold_red(error_text) + print(f"{prog}: {error_text} {message}", file=sys.stderr) + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument( + "--clang-format-executable", + metavar="EXECUTABLE", + help="path to the clang-format executable", + default="clang-format", + ) + parser.add_argument( + "--extensions", + help=f"comma separated list of file extensions (default: {DEFAULT_EXTENSIONS})", + default=DEFAULT_EXTENSIONS, + ) + parser.add_argument( + "-r", + "--recursive", + action="store_true", + help="run recursively over directories", + ) + parser.add_argument("files", metavar="file", nargs="+") + parser.add_argument("-q", "--quiet", action="store_true") + parser.add_argument( + "-j", + metavar="N", + type=int, + default=0, + help="run N clang-format jobs in parallel (default number of cpus + 1)", + ) + parser.add_argument( + "--color", + default="auto", + choices=["auto", "always", "never"], + help="show colored diff (default: auto)", + ) + parser.add_argument( + "-e", + "--exclude", + metavar="PATTERN", + action="append", + default=[], + help="exclude paths matching the given glob-like pattern(s) from recursive search", + ) + + args = parser.parse_args() + + # use default signal handling, like diff return SIGINT value on ^C + # https://bugs.python.org/issue14229#msg156446 + signal.signal(signal.SIGINT, signal.SIG_DFL) + try: + signal.SIGPIPE + except AttributeError: + # compatibility, SIGPIPE does not exist on Windows + pass + else: + signal.signal(signal.SIGPIPE, signal.SIG_DFL) + + colored_stdout = False + colored_stderr = False + if args.color == "always": + colored_stdout = True + colored_stderr = True + elif args.color == "auto": + colored_stdout = sys.stdout.isatty() + colored_stderr = sys.stderr.isatty() + + version_invocation = [args.clang_format_executable, "--version"] + try: + subprocess.check_call(version_invocation, stdout=DEVNULL) + except subprocess.CalledProcessError as e: + print_trouble(parser.prog, str(e), use_colors=colored_stderr) + return ExitStatus.TROUBLE + except OSError as e: + print_trouble( + parser.prog, + f"Command '{subprocess.list2cmdline(version_invocation)}' failed to start: {e}", + use_colors=colored_stderr, + ) + return ExitStatus.TROUBLE + + retcode = ExitStatus.SUCCESS + files = list_files( + args.files, + recursive=args.recursive, + exclude=args.exclude, + extensions=args.extensions.split(","), + ) + + if not files: + return + + njobs = args.j + if njobs == 0: + njobs = multiprocessing.cpu_count() + 1 + njobs = min(len(files), njobs) + + if njobs == 1: + # execute directly instead of in a pool, + # less overhead, simpler stacktraces + it = (run_clang_format_diff_wrapper(args, file) for file in files) + pool = None + else: + pool = multiprocessing.Pool(njobs) + it = pool.imap_unordered(partial(run_clang_format_diff_wrapper, args), files) + while True: + try: + outs, errs = next(it) + except StopIteration: + break + except DiffError as e: + print_trouble(parser.prog, str(e), use_colors=colored_stderr) + retcode = ExitStatus.TROUBLE + sys.stderr.writelines(e.errs) + except UnexpectedError as e: + print_trouble(parser.prog, str(e), use_colors=colored_stderr) + sys.stderr.write(e.formatted_traceback) + retcode = ExitStatus.TROUBLE + # stop at the first unexpected error, + # something could be very wrong, + # don't process all files unnecessarily + if pool: + pool.terminate() + break + else: + sys.stderr.writelines(errs) + if outs == []: + continue + if not args.quiet: + print_diff(outs, use_color=colored_stdout) + if retcode == ExitStatus.SUCCESS: + retcode = ExitStatus.DIFF + return retcode + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/.github/unittest/linux_libs/scripts_pettingzoo/run_test.sh b/.github/unittest/linux_libs/scripts_pettingzoo/run_test.sh new file mode 100755 index 00000000000..d215b514081 --- /dev/null +++ b/.github/unittest/linux_libs/scripts_pettingzoo/run_test.sh @@ -0,0 +1,30 @@ +#!/usr/bin/env bash + +set -e + +eval "$(./conda/bin/conda shell.bash hook)" +conda activate ./env +apt-get update && apt-get install -y git wget + + +export PYTORCH_TEST_WITH_SLOW='1' +python -m torch.utils.collect_env +# Avoid error: "fatal: unsafe repository" +git config --global --add safe.directory '*' + +root_dir="$(git rev-parse --show-toplevel)" +env_dir="${root_dir}/env" +lib_dir="${env_dir}/lib" + +# solves ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$lib_dir +export MKL_THREADING_LAYER=GNU +# more logging +export MAGNUM_LOG=verbose MAGNUM_GPU_VALIDATION=ON + +# this workflow only tests the libs +python -c "import pettingzoo" + +python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestPettingZoo --error-for-skips +coverage combine +coverage xml -i diff --git a/.github/unittest/linux_libs/scripts_pettingzoo/setup_env.sh b/.github/unittest/linux_libs/scripts_pettingzoo/setup_env.sh new file mode 100755 index 00000000000..a3f833112a9 --- /dev/null +++ b/.github/unittest/linux_libs/scripts_pettingzoo/setup_env.sh @@ -0,0 +1,53 @@ +#!/usr/bin/env bash + +# This script is for setting up environment in which unit test is ran. +# To speed up the CI time, the resulting environment is cached. +# +# Do not install PyTorch and torchvision here, otherwise they also get cached. + +set -e + + +this_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +# Avoid error: "fatal: unsafe repository" +git config --global --add safe.directory '*' +root_dir="$(git rev-parse --show-toplevel)" +conda_dir="${root_dir}/conda" +env_dir="${root_dir}/env" + +cd "${root_dir}" + +case "$(uname -s)" in + Darwin*) os=MacOSX;; + *) os=Linux +esac + +# 1. Install conda at ./conda +if [ ! -d "${conda_dir}" ]; then + printf "* Installing conda\n" + wget -O miniconda.sh "http://repo.continuum.io/miniconda/Miniconda3-latest-${os}-x86_64.sh" + bash ./miniconda.sh -b -f -p "${conda_dir}" +fi +eval "$(${conda_dir}/bin/conda shell.bash hook)" + +# 2. Create test environment at ./env +printf "python: ${PYTHON_VERSION}\n" +if [ ! -d "${env_dir}" ]; then + printf "* Creating a test environment\n" + conda create --prefix "${env_dir}" -y python="$PYTHON_VERSION" +fi +conda activate "${env_dir}" + +# 4. Install Conda dependencies +printf "* Installing dependencies (except PyTorch)\n" +echo " - python=${PYTHON_VERSION}" >> "${this_dir}/environment.yml" +cat "${this_dir}/environment.yml" + +pip install pip --upgrade + +conda env update --file "${this_dir}/environment.yml" --prune + +# 5. Download atari roms +autorom_dir="${env_dir}/lib/python${PYTHON_VERSION}/site-packages/AutoROM/roms" +multi_atari_rom_dir="${env_dir}/lib/python${PYTHON_VERSION}/site-packages/multi_agent_ale_py/roms" +ln -s "${autorom_dir}" "${multi_atari_rom_dir}" diff --git a/.github/workflows/test-linux-pettingzoo.yml b/.github/workflows/test-linux-pettingzoo.yml new file mode 100644 index 00000000000..bbf775f4c27 --- /dev/null +++ b/.github/workflows/test-linux-pettingzoo.yml @@ -0,0 +1,40 @@ +name: PettingZoo Tests on Linux + +on: + pull_request: + push: + branches: + - nightly + - main + - release/* + workflow_dispatch: + +concurrency: + # Documentation suggests ${{ github.head_ref }}, but that's only available on pull_request/pull_request_target triggers, so using ${{ github.ref }}. + # On master, we want all builds to complete even if merging happens faster to make it easier to discover at which point something broke. + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && format('ci-master-{0}', github.sha) || format('ci-{0}', github.ref) }} + cancel-in-progress: true + +jobs: + unittests: + uses: pytorch/test-infra/.github/workflows/linux_job.yml@main + with: + repository: pytorch/rl + runner: "linux.g5.4xlarge.nvidia.gpu" + gpu-arch-type: cuda + gpu-arch-version: "11.7" + timeout: 120 + script: | + set -euo pipefail + export PYTHON_VERSION="3.9" + export CU_VERSION="11.7" + export TAR_OPTIONS="--no-same-owner" + export UPLOAD_CHANNEL="nightly" + export TF_CPP_MIN_LOG_LEVEL=0 + + nvidia-smi + + bash .circleci/unittest/linux_libs/scripts_pettingzoo/setup_env.sh + bash .circleci/unittest/linux_libs/scripts_pettingzoo/install.sh + bash .circleci/unittest/linux_libs/scripts_pettingzoo/run_test.sh + bash .circleci/unittest/linux_libs/scripts_pettingzoo/post_process.sh diff --git a/docs/source/reference/envs.rst b/docs/source/reference/envs.rst index f6e6c536ce5..6527418ea75 100644 --- a/docs/source/reference/envs.rst +++ b/docs/source/reference/envs.rst @@ -219,6 +219,8 @@ etc.), but one can not use an arbitrary TorchRL environment, as it is possible w Multi-agent environments ------------------------ +.. currentmodule:: torchrl.envs + TorchRL supports multi-agent learning out-of-the-box. *The same classes used in a single-agent learning pipeline can be seamlessly used in multi-agent contexts, without any modification or dedicated multi-agent infrastructure.* @@ -344,6 +346,15 @@ single agent standards. Note that `env.reward_spec == env.output_spec["full_reward_spec"][env.reward_key]`. +.. autosummary:: + :toctree: generated/ + :template: rl_template_fun.rst + + MarlGroupMapType + check_marl_grouping + + + Transforms ---------- .. currentmodule:: torchrl.envs.transforms @@ -626,5 +637,7 @@ the following function will return ``1`` when queried: jumanji.JumanjiEnv jumanji.JumanjiWrapper openml.OpenMLEnv + pettingzoo.PettingZooEnv + pettingzoo.PettingZooWrapper vmas.VmasEnv vmas.VmasWrapper diff --git a/test/test_env.py b/test/test_env.py index f5d03ba366c..ffa336331f3 100644 --- a/test/test_env.py +++ b/test/test_env.py @@ -61,7 +61,13 @@ from torchrl.envs.libs.dm_control import _has_dmc, DMControlEnv from torchrl.envs.libs.gym import _has_gym, GymEnv, GymWrapper from torchrl.envs.transforms import Compose, StepCounter, TransformedEnv -from torchrl.envs.utils import check_env_specs, make_composite_from_td, step_mdp +from torchrl.envs.utils import ( + check_env_specs, + check_marl_grouping, + make_composite_from_td, + MarlGroupMapType, + step_mdp, +) from torchrl.modules import Actor, ActorCriticOperator, MLP, SafeModule, ValueOperator from torchrl.modules.tensordict_module import WorldModelWrapper @@ -1647,6 +1653,23 @@ def test_make_spec_from_td(): assert val.dtype is spec[key].dtype +@pytest.mark.parametrize("group_type", list(MarlGroupMapType)) +def test_marl_group_type(group_type): + agent_names = ["agent"] + check_marl_grouping(group_type.get_group_map(agent_names), agent_names) + + agent_names = ["agent", "agent"] + with pytest.raises(ValueError): + check_marl_grouping(group_type.get_group_map(agent_names), agent_names) + + agent_names = ["agent_0", "agent_1"] + check_marl_grouping(group_type.get_group_map(agent_names), agent_names) + + agent_names = [] + with pytest.raises(ValueError): + check_marl_grouping(group_type.get_group_map(agent_names), agent_names) + + @pytest.mark.skipif(not torch.cuda.device_count(), reason="No cuda device") class TestConcurrentEnvs: """Concurrent parallel envs on multiple procs can interfere.""" diff --git a/test/test_libs.py b/test/test_libs.py index 2a44e5a70bc..c9e971e75c7 100644 --- a/test/test_libs.py +++ b/test/test_libs.py @@ -62,9 +62,10 @@ from torchrl.envs.libs.habitat import _has_habitat, HabitatEnv from torchrl.envs.libs.jumanji import _has_jumanji, JumanjiEnv from torchrl.envs.libs.openml import OpenMLEnv +from torchrl.envs.libs.pettingzoo import _has_pettingzoo, PettingZooEnv from torchrl.envs.libs.robohive import RoboHiveEnv from torchrl.envs.libs.vmas import _has_vmas, VmasEnv, VmasWrapper -from torchrl.envs.utils import check_env_specs, ExplorationType +from torchrl.envs.utils import check_env_specs, ExplorationType, MarlGroupMapType from torchrl.envs.vec_env import _has_envpool, MultiThreadedEnvWrapper, SerialEnv from torchrl.modules import ActorCriticOperator, MLP, SafeModule, ValueOperator @@ -101,6 +102,7 @@ if _has_vmas: import vmas + if _has_envpool: import envpool @@ -1635,6 +1637,222 @@ def test_env(self, task, num_envs, device): # break +@pytest.mark.skipif(not _has_pettingzoo, reason="PettingZoo not found") +class TestPettingZoo: + @pytest.mark.parametrize("parallel", [True, False]) + @pytest.mark.parametrize("continuous_actions", [True, False]) + @pytest.mark.parametrize("use_mask", [True]) + @pytest.mark.parametrize("return_state", [True, False]) + @pytest.mark.parametrize( + "group_map", + [None, MarlGroupMapType.ALL_IN_ONE_GROUP, MarlGroupMapType.ONE_GROUP_PER_AGENT], + ) + def test_pistonball( + self, parallel, continuous_actions, use_mask, return_state, group_map + ): + + kwargs = {"n_pistons": 21, "continuous": continuous_actions} + + env = PettingZooEnv( + task="pistonball_v6", + parallel=parallel, + seed=0, + return_state=return_state, + use_mask=use_mask, + group_map=group_map, + **kwargs, + ) + + check_env_specs(env) + + @pytest.mark.parametrize( + "wins_player_0", + [True, False], + ) + def test_tic_tac_toe(self, wins_player_0): + env = PettingZooEnv( + task="tictactoe_v3", + parallel=False, + group_map={"player": ["player_1", "player_2"]}, + categorical_actions=False, + seed=0, + use_mask=True, + ) + + class Policy: + + action = 0 + t = 0 + + def __call__(self, td): + new_td = env.input_spec["full_action_spec"].zero() + + player_acting = 0 if self.t % 2 == 0 else 1 + other_player = 1 if self.t % 2 == 0 else 0 + # The acting player has "mask" True and "action_mask" set to the available actions + assert td["player", "mask"][player_acting].all() + assert td["player", "action_mask"][player_acting].any() + # The non-acting player has "mask" False and "action_mask" set to all Trues + assert not td["player", "mask"][other_player].any() + assert td["player", "action_mask"][other_player].all() + + if self.t % 2 == 0: + if not wins_player_0 and self.t == 4: + new_td["player", "action"][0][self.action + 1] = 1 + else: + new_td["player", "action"][0][self.action] = 1 + else: + new_td["player", "action"][1][self.action + 6] = 1 + if td["player", "mask"][1].all(): + self.action += 1 + self.t += 1 + return td.update(new_td) + + td = env.rollout(100, policy=Policy()) + + assert td.batch_size[0] == (5 if wins_player_0 else 6) + assert (td[:-1]["next", "player", "reward"] == 0).all() + if wins_player_0: + assert ( + td[-1]["next", "player", "reward"] == torch.tensor([[1], [-1]]) + ).all() + else: + assert ( + td[-1]["next", "player", "reward"] == torch.tensor([[-1], [1]]) + ).all() + + @pytest.mark.parametrize( + "task", + [ + "multiwalker_v9", + "waterworld_v4", + "pursuit_v4", + "simple_spread_v3", + "simple_v3", + "rps_v2", + "cooperative_pong_v5", + "pistonball_v6", + ], + ) + def test_envs_one_group_parallel(self, task): + env = PettingZooEnv( + task=task, + parallel=True, + seed=0, + use_mask=False, + ) + check_env_specs(env) + env.rollout(100, break_when_any_done=False) + + @pytest.mark.parametrize( + "task", + [ + "multiwalker_v9", + "waterworld_v4", + "pursuit_v4", + "simple_spread_v3", + "simple_v3", + "rps_v2", + "cooperative_pong_v5", + "pistonball_v6", + "connect_four_v3", + "tictactoe_v3", + "chess_v6", + "gin_rummy_v4", + "tictactoe_v3", + ], + ) + def test_envs_one_group_aec(self, task): + env = PettingZooEnv( + task=task, + parallel=False, + seed=0, + use_mask=True, + ) + check_env_specs(env) + env.rollout(100, break_when_any_done=False) + + @pytest.mark.parametrize( + "task", + [ + "simple_adversary_v3", + "simple_crypto_v3", + "simple_push_v3", + "simple_reference_v3", + "simple_speaker_listener_v4", + "simple_tag_v3", + "simple_world_comm_v3", + "knights_archers_zombies_v10", + "basketball_pong_v3", + "boxing_v2", + "foozpong_v3", + ], + ) + def test_envs_more_groups_parallel(self, task): + env = PettingZooEnv( + task=task, + parallel=True, + seed=0, + use_mask=False, + ) + check_env_specs(env) + env.rollout(100, break_when_any_done=False) + + @pytest.mark.parametrize( + "task", + [ + "simple_adversary_v3", + "simple_crypto_v3", + "simple_push_v3", + "simple_reference_v3", + "simple_speaker_listener_v4", + "simple_tag_v3", + "simple_world_comm_v3", + "knights_archers_zombies_v10", + "basketball_pong_v3", + "boxing_v2", + "foozpong_v3", + "go_v5", + ], + ) + def test_envs_more_groups_aec(self, task): + env = PettingZooEnv( + task=task, + parallel=False, + seed=0, + use_mask=True, + ) + check_env_specs(env) + env.rollout(100, break_when_any_done=False) + + @pytest.mark.parametrize("task", ["knights_archers_zombies_v10", "pistonball_v6"]) + @pytest.mark.parametrize("parallel", [True, False]) + def test_vec_env(self, task, parallel): + env_fun = lambda: PettingZooEnv( + task=task, + parallel=parallel, + seed=0, + use_mask=not parallel, + ) + vec_env = ParallelEnv(2, create_env_fn=env_fun) + vec_env.rollout(100, break_when_any_done=False) + + @pytest.mark.parametrize("task", ["knights_archers_zombies_v10", "pistonball_v6"]) + @pytest.mark.parametrize("parallel", [True, False]) + def test_collector(self, task, parallel): + env_fun = lambda: PettingZooEnv( + task=task, + parallel=parallel, + seed=0, + use_mask=not parallel, + ) + coll = SyncDataCollector( + create_env_fn=env_fun, frames_per_batch=30, total_frames=60, policy=None + ) + for _ in coll: + break + + class TestRoboHive: @pytest.mark.parametrize("envname", RoboHiveEnv.env_list) @pytest.mark.parametrize("from_pixels", [True, False]) diff --git a/torchrl/envs/__init__.py b/torchrl/envs/__init__.py index 1fb8f37a6ec..9a9944248b9 100644 --- a/torchrl/envs/__init__.py +++ b/torchrl/envs/__init__.py @@ -56,10 +56,12 @@ ) from .utils import ( check_env_specs, + check_marl_grouping, exploration_mode, exploration_type, ExplorationType, make_composite_from_td, + MarlGroupMapType, set_exploration_mode, set_exploration_type, step_mdp, diff --git a/torchrl/envs/common.py b/torchrl/envs/common.py index 5ecdf148238..56b045cb823 100644 --- a/torchrl/envs/common.py +++ b/torchrl/envs/common.py @@ -225,6 +225,7 @@ def __init__( dtype: Optional[Union[torch.dtype, np.dtype]] = None, batch_size: Optional[torch.Size] = None, run_type_checks: bool = False, + allow_done_after_reset: bool = False, ): if device is None: device = torch.device("cpu") @@ -250,6 +251,7 @@ def __init__( # it's already been set self.batch_size = torch.Size(batch_size) self._run_type_checks = run_type_checks + self._allow_done_after_reset = allow_done_after_reset @classmethod def __new__(cls, *args, _inplace_update=False, _batch_locked=True, **kwargs): @@ -1300,13 +1302,14 @@ def reset( self.output_spec["full_done_spec"][done_key].zero(leading_dim), ) - for done_key in self.done_keys: - if done_key not in _reset_map: - if tensordict_reset.get(done_key).any(): - raise DONE_AFTER_RESET_ERROR - else: - if tensordict_reset.get(done_key)[_reset_map[done_key]].any(): - raise DONE_AFTER_RESET_ERROR + if not self._allow_done_after_reset: + for done_key in self.done_keys: + if done_key not in _reset_map: + if tensordict_reset.get(done_key).any(): + raise DONE_AFTER_RESET_ERROR + else: + if tensordict_reset.get(done_key)[_reset_map[done_key]].any(): + raise DONE_AFTER_RESET_ERROR if tensordict is not None: tensordict.update(tensordict_reset) @@ -1711,6 +1714,7 @@ def __init__( dtype: Optional[np.dtype] = None, device: DEVICE_TYPING = None, batch_size: Optional[torch.Size] = None, + allow_done_after_reset: bool = False, **kwargs, ): if device is None: @@ -1719,6 +1723,7 @@ def __init__( device=device, dtype=dtype, batch_size=batch_size, + allow_done_after_reset=allow_done_after_reset, ) if len(args): raise ValueError( diff --git a/torchrl/envs/libs/pettingzoo.py b/torchrl/envs/libs/pettingzoo.py new file mode 100644 index 00000000000..4b260b79cf6 --- /dev/null +++ b/torchrl/envs/libs/pettingzoo.py @@ -0,0 +1,878 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +import copy +import importlib +from typing import Dict, List, Optional, Tuple, Union + +import torch +from tensordict.tensordict import TensorDictBase + +from torchrl.data import ( + CompositeSpec, + DiscreteTensorSpec, + OneHotDiscreteTensorSpec, + UnboundedContinuousTensorSpec, +) +from torchrl.envs.common import _EnvWrapper +from torchrl.envs.libs.gym import _gym_to_torchrl_spec_transform, set_gym_backend +from torchrl.envs.utils import _replace_last, check_marl_grouping, MarlGroupMapType + + +_has_pettingzoo = importlib.util.find_spec("pettingzoo") is not None + + +def _get_envs() -> List[str]: + if not _has_pettingzoo: + return [] + from pettingzoo.utils.all_modules import all_environments + + return list(all_environments.keys()) + + +class PettingZooWrapper(_EnvWrapper): + """PettingZoo environment wrapper. + + To install petting zoo follow the guide `here __`. + + This class is a general torchrl wrapper for all PettingZoo environments. + It is able to wrap both ``pettingzoo.AECEnv`` and ``pettingzoo.ParallelEnv``. + + Let's see how more in details: + + In wrapped ``pettingzoo.ParallelEnv`` all agents will step at each environment step. + If the number of agents during the task varies, please set ``use_mask=True``. + ``"mask"`` will be provided + as an output in each group and should be used to mask out dead agents. + The environment will be reset as soon as one agent is done. + + In wrapped ``pettingzoo.AECEnv``, at each step only one agent will act. + For this reason, it is compulsory to set ``use_mask=True`` for this type of environment. + ``"mask"`` will be provided as an output for each group and can be used to mask out non-acting agents. + The environment will be reset only when all agents are done. + + If there are any unavailable actions for an agent, + the environment will also automatically update the mask of its ``action_spec`` and output an ``"action_mask"`` + for each group to reflect the latest available actions. This should be passed to a masked distribution during + training. + + As a feature of torchrl multiagent, you are able to control the grouping of agents in your environment. + You can group agents together (stacking their tensors) to leverage vectorization when passing them through the same + neural network. You can split agents in different groups where they are heterogenous or should be processed by + different neural networks. To group, you just need to pass a ``group_map`` at env constructiuon time. + + By default, agents in pettingzoo will be grouped by name. + For example, with agents ``["agent_0","agent_1","agent_2","adversary_0"]``, the tensordicts will look like: + + >>> print(env.rand_action(env.reset())) + TensorDict( + fields={ + agent: TensorDict( + fields={ + action: Tensor(shape=torch.Size([3, 9]), device=cpu, dtype=torch.int64, is_shared=False), + action_mask: Tensor(shape=torch.Size([3, 9]), device=cpu, dtype=torch.bool, is_shared=False), + done: Tensor(shape=torch.Size([3, 1]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([3, 3, 3, 2]), device=cpu, dtype=torch.int8, is_shared=False)}, + batch_size=torch.Size([3]))}, + adversary: TensorDict( + fields={ + action: Tensor(shape=torch.Size([9]), device=cpu, dtype=torch.int64, is_shared=False), + action_mask: Tensor(shape=torch.Size([9]), device=cpu, dtype=torch.bool, is_shared=False), + done: Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([3, 3, 2]), device=cpu, dtype=torch.int8, is_shared=False)}, + batch_size=torch.Size([]))}, + batch_size=torch.Size([])) + >>> print(env.group_map) + {"agent": ["agent_0", "agent_1", "agent_2"], "adversary": ["adversary_0"]} + + Otherwise, a group map can be specified or selected from some premade options. + See :class:`torchrl.envs.utils.MarlGroupMapType` for more info. + For example, you can provide ``MarlGroupMapType.ONE_GROUP_PER_AGENT``, telling that each agent should + have its own tensordict (similar to the pettingzoo parallel API). + + Grouping is useful for leveraging vectorisation among agents whose data goes through the same + neural network. + + Args: + env (``pettingzoo.utils.env.ParallelEnv`` or ``pettingzoo.utils.env.AECEnv``): the pettingzoo environment to wrap. + return_state (bool, optional): whether to return the global state from pettingzoo + (not available in all environments). Defaults to ``False``. + group_map (MarlGroupMapType or Dict[str, List[str]]], optional): how to group agents in tensordicts for + input/output. By default, agents will be grouped by their name. Otherwise, a group map can be specified + or selected from some premade options. See :class:`torchrl.envs.utils.MarlGroupMapType` for more info. + use_mask (bool, optional): whether the environment should output a ``"mask"``. This is compulsory in + wrapped ``pettingzoo.AECEnv`` to mask out non-acting agents and should be also used + for ``pettingzoo.ParallelEnv`` when the number of agents can vary. Defaults to ``False``. + categorical_actions (bool, optional): if the enviornments actions are discrete, whether to transform + them to categorical or one-hot. + seed (int, optional): the seed. Defaults to ``None``. + + Examples: + >>> # Parallel env + >>> from torchrl.envs.libs.pettingzoo import PettingZooWrapper + >>> from pettingzoo.butterfly import pistonball_v6 + >>> kwargs = {"n_pistons": 21, "continuous": True} + >>> env = PettingZooWrapper( + ... env=pistonball_v6.parallel_env(**kwargs), + ... return_state=True, + ... group_map=None, # Use default for parallel (all pistons grouped together) + ... ) + >>> print(env.group_map) + ... {'piston': ['piston_0', 'piston_1', ..., 'piston_20']} + >>> env.rollout(10) + >>> # AEC env + >>> from pettingzoo.classic import tictactoe_v3 + >>> from torchrl.envs.libs.pettingzoo import PettingZooWrapper + >>> from torchrl.envs.utils import MarlGroupMapType + >>> env = PettingZooWrapper( + ... env=tictactoe_v3.env(), + ... use_mask=True, # Must use it since one player plays at a time + ... group_map=None # # Use default for AEC (one group per player) + ... ) + >>> print(env.group_map) + ... {'player_1': ['player_1'], 'player_2': ['player_2']} + >>> env.rollout(10) + """ + + git_url = "https://github.com/Farama-Foundation/PettingZoo" + libname = "pettingzoo" + available_envs = _get_envs() + + def __init__( + self, + env: Union[ + "pettingzoo.utils.env.ParallelEnv", # noqa: F821 + "pettingzoo.utils.env.AECEnv", # noqa: F821 + ] = None, + return_state: Optional[bool] = False, + group_map: Optional[Union[MarlGroupMapType, Dict[str, List[str]]]] = None, + use_mask: bool = False, + categorical_actions: bool = True, + seed: Optional[int] = None, + **kwargs, + ): + if env is not None: + kwargs["env"] = env + + self.group_map = group_map + self.return_state = return_state + self.seed = seed + self.use_mask = use_mask + self.categorical_actions = categorical_actions + + super().__init__(**kwargs, allow_done_after_reset=True) + + def _get_default_group_map(self, agent_names: List[str]): + # This function performs the default grouping in pettingzoo + if not self.parallel: + # In AEC envs we will have one group per agent by default + group_map = MarlGroupMapType.ONE_GROUP_PER_AGENT.get_group_map(agent_names) + else: + # In parallel envs, by default + # Agents with names "str_int" will be grouped in group name "str" + group_map = {} + for agent_name in agent_names: + # See if the agent follows the convention "name_int" + follows_convention = True + agent_name_split = agent_name.split("_") + if len(agent_name_split) == 1: + follows_convention = False + try: + int(agent_name_split[-1]) + except ValueError: + follows_convention = False + + # If not, just put it in a single group + if not follows_convention: + group_map[agent_name] = [agent_name] + # Otherwise, group it with other agents that follow the same convention + else: + group_name = "_".join(agent_name_split[:-1]) + if group_name in group_map: + group_map[group_name].append(agent_name) + else: + group_map[group_name] = [agent_name] + + return group_map + + @property + def lib(self): + import pettingzoo + + return pettingzoo + + def _build_env( + self, + env: Union[ + "pettingzoo.utils.env.ParallelEnv", # noqa: F821 + "pettingzoo.utils.env.AECEnv", # noqa: F821 + ], + ): + import pettingzoo + + self.parallel = isinstance(env, pettingzoo.utils.env.ParallelEnv) + if not self.parallel and not self.use_mask: + raise ValueError("For AEC environments you need to set use_mask=True") + if len(self.batch_size): + raise RuntimeError( + f"PettingZoo does not support custom batch_size {self.batch_size}." + ) + + return env + + @set_gym_backend("gymnasium") + def _make_specs( + self, + env: Union[ + "pettingzoo.utils.env.ParallelEnv", # noqa: F821 + "pettingzoo.utils.env.AECEnv", # noqa: F821 + ], + ) -> None: + + # Create and check group map + if self.group_map is None: + self.group_map = self._get_default_group_map(self.possible_agents) + elif isinstance(self.group_map, MarlGroupMapType): + self.group_map = self.group_map.get_group_map(self.possible_agents) + check_marl_grouping(self.group_map, self.possible_agents) + self.has_action_mask = {group: False for group in self.group_map.keys()} + + action_spec = CompositeSpec() + observation_spec = CompositeSpec() + reward_spec = CompositeSpec() + done_spec = CompositeSpec() + for group, agents in self.group_map.items(): + ( + group_observation_spec, + group_action_spec, + group_reward_spec, + group_done_spec, + ) = self._make_group_specs(group_name=group, agent_names=agents) + action_spec[group] = group_action_spec + observation_spec[group] = group_observation_spec + reward_spec[group] = group_reward_spec + done_spec[group] = group_done_spec + + self.action_spec = action_spec + self.observation_spec = observation_spec + self.reward_spec = reward_spec + self.done_spec = done_spec + + def _make_group_specs(self, group_name: str, agent_names: List[str]): + n_agents = len(agent_names) + action_specs = [] + observation_specs = [] + for agent in agent_names: + action_specs.append( + CompositeSpec( + { + "action": _gym_to_torchrl_spec_transform( + self.action_space(agent), + remap_state_to_observation=False, + categorical_action_encoding=self.categorical_actions, + device=self.device, + ) + }, + ) + ) + observation_specs.append( + CompositeSpec( + { + "observation": _gym_to_torchrl_spec_transform( + self.observation_space(agent), + remap_state_to_observation=False, + device=self.device, + ) + } + ) + ) + group_action_spec = torch.stack(action_specs, dim=0) + group_observation_spec = torch.stack(observation_specs, dim=0) + + # Sometimes the observation spec contains an action mask. + # Or sometimes the info spec contains an action mask. + # We uniform this by removing it from both places and optionally set it in a standard location. + group_observation_inner_spec = group_observation_spec["observation"] + if ( + isinstance(group_observation_inner_spec, CompositeSpec) + and "action_mask" in group_observation_inner_spec.keys() + ): + self.has_action_mask[group_name] = True + del group_observation_inner_spec["action_mask"] + group_observation_spec["action_mask"] = DiscreteTensorSpec( + n=2, + shape=group_action_spec["action"].shape + if not self.categorical_actions + else ( + *group_action_spec["action"].shape, + group_action_spec["action"].space.n, + ), + dtype=torch.bool, + device=self.device, + ) + + if self.use_mask: + group_observation_spec["mask"] = DiscreteTensorSpec( + n=2, + shape=torch.Size((n_agents,)), + dtype=torch.bool, + device=self.device, + ) + + group_reward_spec = CompositeSpec( + { + "reward": UnboundedContinuousTensorSpec( + shape=torch.Size((n_agents, 1)), + device=self.device, + dtype=torch.float32, + ) + }, + shape=torch.Size((n_agents,)), + ) + group_done_spec = CompositeSpec( + { + "done": DiscreteTensorSpec( + n=2, + shape=torch.Size((n_agents, 1)), + dtype=torch.bool, + device=self.device, + ), + }, + shape=torch.Size((n_agents,)), + ) + if n_agents == 1: + # When there is only one agent in the group we remove the singleton corresponding to the group size + group_observation_spec = group_observation_spec.squeeze(0) + group_action_spec = group_action_spec.squeeze(0) + group_reward_spec = group_reward_spec.squeeze(0) + group_done_spec = group_done_spec.squeeze(0) + return ( + group_observation_spec, + group_action_spec, + group_reward_spec, + group_done_spec, + ) + + def _check_kwargs(self, kwargs: Dict): + import pettingzoo + + if "env" not in kwargs: + raise TypeError("Could not find environment key 'env' in kwargs.") + env = kwargs["env"] + if not isinstance( + env, (pettingzoo.utils.env.ParallelEnv, pettingzoo.utils.env.AECEnv) + ): + raise TypeError("env is not of type expected.") + + def _init_env(self) -> Optional[int]: + # Add info + if self.parallel: + _, info_dict = self._reset_parallel() + else: + _, info_dict = self._reset_aec() + + for group, agents in self.group_map.items(): + info_specs = [] + for agent in agents: + info_specs.append( + CompositeSpec( + { + "info": CompositeSpec( + { + key: UnboundedContinuousTensorSpec( + shape=torch.tensor(value).shape, + device=self.device, + ) + for key, value in info_dict[agent].items() + } + ) + }, + device=self.device, + ) + ) + info_specs = torch.stack(info_specs, dim=0) + if ("info", "action_mask") in info_specs.keys(True, True): + if not self.has_action_mask[group]: + self.has_action_mask[group] = True + group_action_spec = self.input_spec[ + "full_action_spec", group, "action" + ] + self.observation_spec[group]["action_mask"] = DiscreteTensorSpec( + n=2, + shape=group_action_spec.shape + if not self.categorical_actions + else (*group_action_spec.shape, group_action_spec.space.n), + dtype=torch.bool, + device=self.device, + ) + group_inner_info_spec = info_specs["info"] + del group_inner_info_spec["action_mask"] + + if len(info_specs["info"].keys()): + self.observation_spec[group].update(info_specs) + + if self.return_state: + try: + state_spec = _gym_to_torchrl_spec_transform( + self.state_space, + remap_state_to_observation=False, + device=self.device, + ) + except AttributeError: + state_example = torch.tensor(self.state(), device=self.device) + state_spec = UnboundedContinuousTensorSpec( + shape=state_example.shape, + dtype=state_example.dtype, + device=self.device, + ) + self.observation_spec["state"] = state_spec + + # Caching + self.cached_reset_output_zero = self.observation_spec.zero() + self.cached_reset_output_zero.update(self.output_spec["full_done_spec"].zero()) + + self.cached_step_output_zero = self.observation_spec.zero() + self.cached_step_output_zero.update(self.output_spec["full_reward_spec"].zero()) + self.cached_step_output_zero.update(self.output_spec["full_done_spec"].zero()) + + def _set_seed(self, seed: Optional[int]): + self.seed = seed + + def _reset( + self, tensordict: Optional[TensorDictBase] = None, **kwargs + ) -> TensorDictBase: + + if self.parallel: + # This resets when any is done + observation_dict, info_dict = self._reset_parallel() + else: + # This resets when all are done + observation_dict, info_dict = self._reset_aec(tensordict) + + # We start with zeroed data and fill in the data for alive agents + tensordict_out = self.cached_reset_output_zero.clone() + # Update the "mask" for non-acting agents + self._update_agent_mask(tensordict_out) + # Update the "action_mask" for non-available actions + observation_dict, info_dict = self._update_action_mask( + tensordict_out, observation_dict, info_dict + ) + + # Now we get the data (obs and info) + for group, agent_names in self.group_map.items(): + group_observation = tensordict_out.get((group, "observation")) + group_info = tensordict_out.get((group, "info"), None) + + for i, agent in enumerate(agent_names): + index = ( + i if len(agent_names) > 1 else Ellipsis + ) # If group has one agent we index with '...' + group_observation[index] = self.observation_spec[group, "observation"][ + index + ].encode(observation_dict[agent]) + if group_info is not None: + agent_info_dict = info_dict[agent] + for agent_info, value in agent_info_dict.items(): + group_info.get(agent_info)[index] = torch.tensor( + value, device=self.device + ) + + return tensordict_out + + def _reset_aec(self, tensordict=None) -> Tuple[Dict, Dict]: + all_done = True + if tensordict is not None: + _resets = [] + for done_key in self.done_keys: + _reset_key = _replace_last(done_key, "_reset") + _reset = tensordict.get(_reset_key, default=None) + if _reset is None: + continue + _resets.append(_reset) + if len(_resets) < len(self.done_keys): + all_done = False + else: + for _reset in _resets: + if not _reset.all(): + all_done = False + break + + if all_done: + self._env.reset(seed=self.seed) + + observation_dict = { + agent: self._env.observe(agent) for agent in self.possible_agents + } + info_dict = self._env.infos + return observation_dict, info_dict + + def _reset_parallel( + self, + ) -> Tuple[Dict, Dict]: + return self._env.reset(seed=self.seed) + + def _step( + self, + tensordict: TensorDictBase, + ) -> TensorDictBase: + + if self.parallel: + ( + observation_dict, + rewards_dict, + terminations_dict, + truncations_dict, + info_dict, + ) = self._step_parallel(tensordict) + else: + ( + observation_dict, + rewards_dict, + terminations_dict, + truncations_dict, + info_dict, + ) = self._step_aec(tensordict) + + # We start with zeroed data and fill in the data for alive agents + tensordict_out = self.cached_step_output_zero.clone() + # Update the "mask" for non-acting agents + self._update_agent_mask(tensordict_out) + # Update the "action_mask" for non-available actions + observation_dict, info_dict = self._update_action_mask( + tensordict_out, observation_dict, info_dict + ) + + # Now we get the data + for group, agent_names in self.group_map.items(): + group_observation = tensordict_out.get((group, "observation")) + group_reward = tensordict_out.get((group, "reward")) + group_done = tensordict_out.get((group, "done")) + group_info = tensordict_out.get((group, "info"), None) + + for i, agent in enumerate(agent_names): + if agent in observation_dict: # Live agents + index = ( + i if len(agent_names) > 1 else Ellipsis + ) # If group has one agent, we index with '...' + group_observation[index] = self.observation_spec[ + group, "observation" + ][index].encode(observation_dict[agent]) + group_reward[index] = torch.tensor( + rewards_dict[agent], + device=self.device, + dtype=torch.float32, + ) + group_done[index] = torch.tensor( + terminations_dict[agent] or truncations_dict[agent], + device=self.device, + dtype=torch.bool, + ) + + if group_info is not None: + agent_info_dict = info_dict[agent] + for agent_info, value in agent_info_dict.items(): + group_info.get(agent_info)[index] = torch.tensor( + value, device=self.device + ) + + elif not self.use_action_mask: + # Dead agent, if we are not masking it out, this is not allowed + raise ValueError( + "Dead agents found in the environment," + " you need to set use_action_mask=True to allow this." + ) + + return tensordict_out + + def _step_parallel( + self, + tensordict: TensorDictBase, + ) -> Tuple[Dict, Dict, Dict, Dict, Dict]: + action_dict = {} + for group, agents in self.group_map.items(): + group_action = tensordict.get((group, "action")) + group_action_np = self.input_spec[ + "full_action_spec", group, "action" + ].to_numpy(group_action) + for i, agent in enumerate(agents): + index = i if len(agents) > 1 else Ellipsis + action_dict[agent] = group_action_np[index] + + return self._env.step(action_dict) + + def _step_aec( + self, + tensordict: TensorDictBase, + ) -> Tuple[Dict, Dict, Dict, Dict, Dict]: + + for group, agents in self.group_map.items(): + if self.agent_selection in agents: + agent_index = ( + agents.index(self._env.agent_selection) + if len(agents) > 1 + else Ellipsis + ) + group_action = tensordict.get((group, "action")) + group_action_np = self.input_spec[ + "full_action_spec", group, "action" + ].to_numpy(group_action) + action = group_action_np[agent_index] + break + + self._env.step(action) + terminations_dict = self._env.terminations + truncations_dict = self._env.truncations + info_dict = self._env.infos + rewards_dict = self._env.rewards + observation_dict = { + agent: self._env.observe(agent) for agent in self.possible_agents + } + return ( + observation_dict, + rewards_dict, + terminations_dict, + truncations_dict, + info_dict, + ) + + def _update_action_mask(self, td, observation_dict, info_dict): + + # Since we remove the action_mask keys we need to copy the data + observation_dict = copy.deepcopy(observation_dict) + info_dict = copy.deepcopy(info_dict) + # In AEC only one agent acts, in parallel env self.agents contains the agents alive + agents_acting = self.agents if self.parallel else [self.agent_selection] + + for group, agents in self.group_map.items(): + if self.has_action_mask[group]: + group_mask = td.get((group, "action_mask")) + group_mask += True + for i, agent in enumerate(agents): + index = ( + i if len(agents) > 1 else Ellipsis + ) # If group has one agent we index with '...' + agent_obs = observation_dict[agent] + agent_info = info_dict[agent] + if isinstance(agent_obs, Dict) and "action_mask" in agent_obs: + if agent in agents_acting: + group_mask[index] = torch.tensor( + agent_obs["action_mask"], + device=self.device, + dtype=torch.bool, + ) + del agent_obs["action_mask"] + elif isinstance(agent_info, Dict) and "action_mask" in agent_info: + if agent in agents_acting: + group_mask[index] = torch.tensor( + agent_info["action_mask"], + device=self.device, + dtype=torch.bool, + ) + del agent_info["action_mask"] + + group_action_spec = self.input_spec["full_action_spec", group, "action"] + if isinstance( + group_action_spec, (DiscreteTensorSpec, OneHotDiscreteTensorSpec) + ): + # We update the mask for available actions + group_action_spec.update_mask(group_mask.clone()) + + return observation_dict, info_dict + + def _update_agent_mask(self, td): + if self.use_mask: + # In AEC only one agent acts, in parallel env self.agents contains the agents alive + agents_acting = self.agents if self.parallel else [self.agent_selection] + for group, agents in self.group_map.items(): + group_mask = td.get((group, "mask")) + group_mask += True + + # We now add dead agents to the mask + for i, agent in enumerate(agents): + index = ( + i if len(agents) > 1 else Ellipsis + ) # If group has one agent we index with '...' + if agent not in agents_acting: + group_mask[index] = False + + def close(self) -> None: + self._env.close() + + +class PettingZooEnv(PettingZooWrapper): + """PettingZoo Environment. + + To install petting zoo follow the guide `here __`. + + This class is a general torchrl wrapper for all PettingZoo environments. + It is able to wrap both ``pettingzoo.AECEnv`` and ``pettingzoo.ParallelEnv``. + + Let's see how more in details: + + For wrapping ``pettingzoo.ParallelEnv`` provide the name of your petting zoo task (in the ``task`` argument) + and specify ``parallel=True``. This will construct the ``pettingzoo.ParallelEnv`` version of that task + (if it is supported in pettingzoo) and wrap it for torchrl. + In wrapped ``pettingzoo.ParallelEnv`` all agents will step at each environment step. + If the number of agents during the task varies, please set ``use_mask=True``. + ``"mask"`` will be provided + as an output in each group and should be used to mask out dead agents. + The environment will be reset as soon as one agent is done. + + For wrapping ``pettingzoo.AECEnv`` provide the name of your petting zoo task (in the ``task`` argument) + and specify ``parallel=False``. This will construct the ``pettingzoo.AECEnv`` version of that task + and wrap it for torchrl. + In wrapped ``pettingzoo.AECEnv``, at each step only one agent will act. + For this reason, it is compulsory to set ``use_mask=True`` for this type of environment. + ``"mask"`` will be provided as an output for each group and can be used to mask out non-acting agents. + The environment will be reset only when all agents are done. + + If there are any unavailable actions for an agent, + the environment will also automatically update the mask of its ``action_spec`` and output an ``"action_mask"`` + for each group to reflect the latest available actions. This should be passed to a masked distribution during + training. + + As a feature of torchrl multiagent, you are able to control the grouping of agents in your environment. + You can group agents together (stacking their tensors) to leverage vectorization when passing them through the same + neural network. You can split agents in different groups where they are heterogenous or should be processed by + different neural networks. To group, you just need to pass a ``group_map`` at env constructiuon time. + + By default, agents in pettingzoo will be grouped by name. + For example, with agents ``["agent_0","agent_1","agent_2","adversary_0"]``, the tensordicts will look like: + + >>> print(env.rand_action(env.reset())) + TensorDict( + fields={ + agent: TensorDict( + fields={ + action: Tensor(shape=torch.Size([3, 9]), device=cpu, dtype=torch.int64, is_shared=False), + action_mask: Tensor(shape=torch.Size([3, 9]), device=cpu, dtype=torch.bool, is_shared=False), + done: Tensor(shape=torch.Size([3, 1]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([3, 3, 3, 2]), device=cpu, dtype=torch.int8, is_shared=False)}, + batch_size=torch.Size([3]))}, + adversary: TensorDict( + fields={ + action: Tensor(shape=torch.Size([9]), device=cpu, dtype=torch.int64, is_shared=False), + action_mask: Tensor(shape=torch.Size([9]), device=cpu, dtype=torch.bool, is_shared=False), + done: Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([3, 3, 2]), device=cpu, dtype=torch.int8, is_shared=False)}, + batch_size=torch.Size([]))}, + batch_size=torch.Size([])) + >>> print(env.group_map) + {"agent": ["agent_0", "agent_1", "agent_2"], "adversary": ["adversary_0"]} + + Otherwise, a group map can be specified or selected from some premade options. + See :class:`torchrl.envs.utils.MarlGroupMapType` for more info. + For example, you can provide ``MarlGroupMapType.ONE_GROUP_PER_AGENT``, telling that each agent should + have its own tensordict (similar to the pettingzoo parallel API). + + Grouping is useful for leveraging vectorisation among agents whose data goes through the same + neural network. + + Args: + task (str): the name of the pettingzoo task to create (for example, "multiwalker_v9"). + parallel (bool): if to construct the ``pettingzoo.ParallelEnv`` version of the task or the ``pettingzoo.AECEnv``. + return_state (bool, optional): whether to return the global state from pettingzoo + (not available in all environments). Defaults to ``False``. + group_map (MarlGroupMapType or Dict[str, List[str]]], optional): how to group agents in tensordicts for + input/output. By default, agents will be grouped by their name. Otherwise, a group map can be specified + or selected from some premade options. See :class:`torchrl.envs.utils.MarlGroupMapType` for more info. + use_mask (bool, optional): whether the environment should output an ``"mask"``. This is compulsory in + wrapped ``pettingzoo.AECEnv`` to mask out non-acting agents and should be also used + for ``pettingzoo.ParallelEnv`` when the number of agents can vary. Defaults to ``False``. + categorical_actions (bool, optional): if the enviornments actions are discrete, whether to transform + them to categorical or one-hot. + seed (int, optional): the seed. Defaults to ``None``. + + Examples: + >>> # Parallel env + >>> from torchrl.envs.libs.pettingzoo import PettingZooEnv + >>> kwargs = {"n_pistons": 21, "continuous": True} + >>> env = PettingZooEnv( + ... task="pistonball_v6", + ... parallel=True, + ... return_state=True, + ... group_map=None, # Use default (all pistons grouped together) + ... **kwargs, + ... ) + >>> print(env.group_map) + ... {'piston': ['piston_0', 'piston_1', ..., 'piston_20']} + >>> env.rollout(10) + >>> # AEC env + >>> from torchrl.envs.libs.pettingzoo import PettingZooEnv + >>> from torchrl.envs.utils import MarlGroupMapType + >>> env = PettingZooEnv( + ... task="tictactoe_v3", + ... parallel=False, + ... use_mask=True, # Must use it since one player plays at a time + ... group_map=None # # Use default for AEC (one group per player) + ... ) + >>> print(env.group_map) + ... {'player_1': ['player_1'], 'player_2': ['player_2']} + >>> env.rollout(10) + """ + + def __init__( + self, + task: str, + parallel: bool, + return_state: Optional[bool] = False, + group_map: Optional[Union[MarlGroupMapType, Dict[str, List[str]]]] = None, + use_mask: bool = False, + categorical_actions: bool = True, + seed: Optional[int] = None, + **kwargs, + ): + if not _has_pettingzoo: + raise ImportError( + f"pettingzoo python package was not found. Please install this dependency. " + f"More info: {self.git_url}." + ) + kwargs["task"] = task + kwargs["parallel"] = parallel + kwargs["return_state"] = return_state + kwargs["group_map"] = group_map + kwargs["use_mask"] = use_mask + kwargs["categorical_actions"] = categorical_actions + kwargs["seed"] = seed + + super().__init__(**kwargs) + + def _check_kwargs(self, kwargs: Dict): + if "task" not in kwargs: + raise TypeError("Could not find environment key 'task' in kwargs.") + if "parallel" not in kwargs: + raise TypeError("Could not find environment key 'parallel' in kwargs.") + + def _build_env( + self, + task: str, + parallel: bool, + **kwargs, + ) -> Union[ + "pettingzoo.utils.env.ParallelEnv", # noqa: F821 + "pettingzoo.utils.env.AECEnv", # noqa: F821 + ]: + self.task_name = task + + from pettingzoo.utils.all_modules import all_environments + + if task not in all_environments: + # Try looking at the literal translation of values + task_module = None + for value in all_environments.values(): + if value.__name__.split(".")[-1] == task: + task_module = value + break + if task_module is None: + raise RuntimeError(f"Specified task not in {_get_envs()}") + else: + task_module = all_environments[task] + + if parallel: + petting_zoo_env = task_module.parallel_env(**kwargs) + else: + petting_zoo_env = task_module.env(**kwargs) + + return super()._build_env(env=petting_zoo_env) diff --git a/torchrl/envs/libs/vmas.py b/torchrl/envs/libs/vmas.py index 64bc71d0a5a..7ce2bc91885 100644 --- a/torchrl/envs/libs/vmas.py +++ b/torchrl/envs/libs/vmas.py @@ -1,3 +1,8 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + from typing import Dict, List, Optional, Union import torch @@ -116,7 +121,7 @@ def __init__( raise TypeError("Env device is different from vmas device") kwargs["device"] = str(env.device) self.categorical_actions = categorical_actions - super().__init__(**kwargs) + super().__init__(**kwargs, allow_done_after_reset=True) @property def lib(self): diff --git a/torchrl/envs/utils.py b/torchrl/envs/utils.py index ca80c0c2189..e4d41d14bfa 100644 --- a/torchrl/envs/utils.py +++ b/torchrl/envs/utils.py @@ -9,7 +9,8 @@ import importlib.util import os import re -from typing import List, Union +from enum import Enum +from typing import Dict, List, Union import torch @@ -35,6 +36,8 @@ "check_env_specs", "step_mdp", "make_composite_from_td", + "MarlGroupMapType", + "check_marl_grouping", ] @@ -612,3 +615,119 @@ def _replace_last(key: NestedKey, new_ending: str) -> NestedKey: return new_ending else: return key[:-1] + (new_ending,) + + +class MarlGroupMapType(Enum): + """Marl Group Map Type. + + As a feature of torchrl multiagent, you are able to control the grouping of agents in your environment. + You can group agents together (stacking their tensors) to leverage vectorization when passing them through the same + neural network. You can split agents in different groups where they are heterogenous or should be processed by + different neural networks. To group, you just need to pass a ``group_map`` at env constructiuon time. + + Otherwise, you can choose one of the premade grouping strategies from this class. + + - With ``group_map=MarlGroupMapType.ALL_IN_ONE_GROUP`` and + agents ``["agent_0", "agent_1", "agent_2", "agent_3"]``, + the tensordicts coming and going from your environment will look + something like: + + >>> print(env.rand_action(env.reset())) + TensorDict( + fields={ + agents: TensorDict( + fields={ + action: Tensor(shape=torch.Size([4, 9]), device=cpu, dtype=torch.int64, is_shared=False), + done: Tensor(shape=torch.Size([4, 1]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([4, 3, 3, 2]), device=cpu, dtype=torch.int8, is_shared=False)}, + batch_size=torch.Size([4]))}, + batch_size=torch.Size([])) + >>> print(env.group_map) + {"agents": ["agent_0", "agent_1", "agent_2", "agent_3]} + + - With ``group_map=MarlGroupMapType.ONE_GROUP_PER_AGENT`` and + agents ``["agent_0", "agent_1", "agent_2", "agent_3"]``, + the tensordicts coming and going from your environment will look + something like: + + >>> print(env.rand_action(env.reset())) + TensorDict( + fields={ + agent_0: TensorDict( + fields={ + action: Tensor(shape=torch.Size([9]), device=cpu, dtype=torch.int64, is_shared=False), + done: Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([3, 3, 2]), device=cpu, dtype=torch.int8, is_shared=False)}, + batch_size=torch.Size([]))}, + agent_1: TensorDict( + fields={ + action: Tensor(shape=torch.Size([9]), device=cpu, dtype=torch.int64, is_shared=False), + done: Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([3, 3, 2]), device=cpu, dtype=torch.int8, is_shared=False)}, + batch_size=torch.Size([]))}, + agent_2: TensorDict( + fields={ + action: Tensor(shape=torch.Size([9]), device=cpu, dtype=torch.int64, is_shared=False), + done: Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([3, 3, 2]), device=cpu, dtype=torch.int8, is_shared=False)}, + batch_size=torch.Size([]))}, + agent_3: TensorDict( + fields={ + action: Tensor(shape=torch.Size([9]), device=cpu, dtype=torch.int64, is_shared=False), + done: Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([3, 3, 2]), device=cpu, dtype=torch.int8, is_shared=False)}, + batch_size=torch.Size([]))}, + batch_size=torch.Size([])) + >>> print(env.group_map) + {"agent_0": ["agent_0"], "agent_1": ["agent_1"], "agent_2": ["agent_2"], "agent_3": ["agent_3"]} + """ + + ALL_IN_ONE_GROUP = 1 + ONE_GROUP_PER_AGENT = 2 + + def get_group_map(self, agent_names: List[str]): + if self == MarlGroupMapType.ALL_IN_ONE_GROUP: + return {"agents": agent_names} + elif self == MarlGroupMapType.ONE_GROUP_PER_AGENT: + return {agent_name: [agent_name] for agent_name in agent_names} + + +def check_marl_grouping(group_map: Dict[str, List[str]], agent_names: List[str]): + """Check MARL group map. + + Performs checks on the group map of a marl environment to assess its validity. + Raises an error in cas of an invalid group_map. + + Args: + group_map (Dict[str, List[str]]): the group map mapping group names to list of agent names in the group + agent_names (List[str]): a list of all the agent names in the environment4 + + Examples: + >>> from torchrl.envs.utils import MarlGroupMapType, check_marl_grouping + >>> agent_names = ["agent_0", "agent_1", "agent_2"] + >>> check_marl_grouping(MarlGroupMapType.ALL_IN_ONE_GROUP.get_group_map(agent_names), agent_names) + + """ + n_agents = len(agent_names) + if n_agents == 0: + raise ValueError("No agents passed") + if len(set(agent_names)) != n_agents: + raise ValueError("There are agents with the same name") + if len(group_map.keys()) > n_agents: + raise ValueError( + f"Number of groups {len(group_map.keys())} greater than number of agents {n_agents}" + ) + found_agents = {agent_name: False for agent_name in agent_names} + for group_name, group in group_map.items(): + if not len(group): + raise ValueError(f"Group {group_name} is empty") + for agent_name in group: + if agent_name not in found_agents: + raise ValueError(f"Agent {agent_name} not present in environment") + if not found_agents[agent_name]: + found_agents[agent_name] = True + else: + raise ValueError(f"Agent {agent_name} present more than once") + for agent_name, found in found_agents.items(): + if not found: + raise ValueError(f"Agent {agent_name} not found in any group") From e08255f3543d9cc7beeeb8bdb90470250ff1e263 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Thu, 14 Sep 2023 17:17:01 +0100 Subject: [PATCH 078/148] [CI] Fix CI PettingZoo (#1528) Signed-off-by: Matteo Bettini --- .../unittest/linux_libs/scripts_pettingzoo/run_test.sh | 2 +- .github/workflows/test-linux-pettingzoo.yml | 8 ++++---- setup.py | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/unittest/linux_libs/scripts_pettingzoo/run_test.sh b/.github/unittest/linux_libs/scripts_pettingzoo/run_test.sh index d215b514081..1cdb653ede8 100755 --- a/.github/unittest/linux_libs/scripts_pettingzoo/run_test.sh +++ b/.github/unittest/linux_libs/scripts_pettingzoo/run_test.sh @@ -25,6 +25,6 @@ export MAGNUM_LOG=verbose MAGNUM_GPU_VALIDATION=ON # this workflow only tests the libs python -c "import pettingzoo" -python .circleci/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestPettingZoo --error-for-skips +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestPettingZoo --error-for-skips coverage combine coverage xml -i diff --git a/.github/workflows/test-linux-pettingzoo.yml b/.github/workflows/test-linux-pettingzoo.yml index bbf775f4c27..628be74beef 100644 --- a/.github/workflows/test-linux-pettingzoo.yml +++ b/.github/workflows/test-linux-pettingzoo.yml @@ -34,7 +34,7 @@ jobs: nvidia-smi - bash .circleci/unittest/linux_libs/scripts_pettingzoo/setup_env.sh - bash .circleci/unittest/linux_libs/scripts_pettingzoo/install.sh - bash .circleci/unittest/linux_libs/scripts_pettingzoo/run_test.sh - bash .circleci/unittest/linux_libs/scripts_pettingzoo/post_process.sh + bash .github/unittest/linux_libs/scripts_pettingzoo/setup_env.sh + bash .github/unittest/linux_libs/scripts_pettingzoo/install.sh + bash .github/unittest/linux_libs/scripts_pettingzoo/run_test.sh + bash .github/unittest/linux_libs/scripts_pettingzoo/post_process.sh diff --git a/setup.py b/setup.py index c7e3a8520eb..3018f25912a 100644 --- a/setup.py +++ b/setup.py @@ -235,7 +235,7 @@ def _main(argv): "checkpointing": [ "torchsnapshot", ], - "marl": ["vmas"], + "marl": ["vmas>=1.2.10", "pettingzoo>=1.24.1"], }, zip_safe=False, classifiers=[ From 3dbc02496f8a98405a924f3d94dfbc4d9b1a82d2 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Thu, 14 Sep 2023 21:11:17 +0100 Subject: [PATCH 079/148] [BugFix] Fix envpool (#1530) --- README.md | 2 +- test/_utils_internal.py | 5 +- test/test_libs.py | 3 +- torchrl/collectors/collectors.py | 2 +- torchrl/envs/__init__.py | 3 +- torchrl/envs/{vec_env.py => batched_envs.py} | 314 +----------------- torchrl/envs/common.py | 8 +- torchrl/envs/libs/envpool.py | 322 +++++++++++++++++++ torchrl/envs/vec_envs.py | 9 + 9 files changed, 348 insertions(+), 320 deletions(-) rename torchrl/envs/{vec_env.py => batched_envs.py} (78%) create mode 100644 torchrl/envs/libs/envpool.py create mode 100644 torchrl/envs/vec_envs.py diff --git a/README.md b/README.md index d90b3ef6df9..aacfd0930b4 100644 --- a/README.md +++ b/README.md @@ -265,7 +265,7 @@ And it is `functorch` and `torch.compile` compatible! - A common [interface for environments](torchrl/envs) which supports common libraries (OpenAI gym, deepmind control lab, etc.)(1) and state-less execution (e.g. Model-based environments). - The [batched environments](torchrl/envs/vec_env.py) containers allow parallel execution(2). + The [batched environments](torchrl/envs/batched_envs.py) containers allow parallel execution(2). A common PyTorch-first class of [tensor-specification class](torchrl/data/tensor_specs.py) is also provided. TorchRL's environments API is simple but stringent and specific. Check the [documentation](https://pytorch.org/rl/reference/envs.html) diff --git a/test/_utils_internal.py b/test/_utils_internal.py index 85e76790c26..84dc6f33626 100644 --- a/test/_utils_internal.py +++ b/test/_utils_internal.py @@ -20,7 +20,9 @@ from tensordict import tensorclass from torchrl._utils import implement_for, seed_generator -from torchrl.envs import ObservationNorm +from torchrl.envs import MultiThreadedEnv, ObservationNorm +from torchrl.envs.batched_envs import ParallelEnv, SerialEnv +from torchrl.envs.libs.envpool import _has_envpool from torchrl.envs.libs.gym import _has_gym, GymEnv from torchrl.envs.transforms import ( Compose, @@ -28,7 +30,6 @@ ToTensorImage, TransformedEnv, ) -from torchrl.envs.vec_env import _has_envpool, MultiThreadedEnv, ParallelEnv, SerialEnv # Specified for test_utils.py __version__ = "0.3" diff --git a/test/test_libs.py b/test/test_libs.py index c9e971e75c7..1d6b341b710 100644 --- a/test/test_libs.py +++ b/test/test_libs.py @@ -49,8 +49,10 @@ ParallelEnv, RenameTransform, ) +from torchrl.envs.batched_envs import SerialEnv from torchrl.envs.libs.brax import _has_brax, BraxEnv from torchrl.envs.libs.dm_control import _has_dmc, DMControlEnv, DMControlWrapper +from torchrl.envs.libs.envpool import _has_envpool, MultiThreadedEnvWrapper from torchrl.envs.libs.gym import ( _has_gym, _is_from_pixels, @@ -66,7 +68,6 @@ from torchrl.envs.libs.robohive import RoboHiveEnv from torchrl.envs.libs.vmas import _has_vmas, VmasEnv, VmasWrapper from torchrl.envs.utils import check_env_specs, ExplorationType, MarlGroupMapType -from torchrl.envs.vec_env import _has_envpool, MultiThreadedEnvWrapper, SerialEnv from torchrl.modules import ActorCriticOperator, MLP, SafeModule, ValueOperator _has_d4rl = importlib.util.find_spec("d4rl") is not None diff --git a/torchrl/collectors/collectors.py b/torchrl/collectors/collectors.py index 26516ad6dd1..98b03d40b32 100644 --- a/torchrl/collectors/collectors.py +++ b/torchrl/collectors/collectors.py @@ -38,6 +38,7 @@ from torchrl.collectors.utils import split_trajectories from torchrl.data.tensor_specs import CompositeSpec, TensorSpec from torchrl.data.utils import CloudpickleWrapper, DEVICE_TYPING +from torchrl.envs.batched_envs import _BatchedEnv from torchrl.envs.common import EnvBase from torchrl.envs.transforms import StepCounter, TransformedEnv from torchrl.envs.utils import ( @@ -47,7 +48,6 @@ set_exploration_type, step_mdp, ) -from torchrl.envs.vec_env import _BatchedEnv _TIMEOUT = 1.0 _MIN_TIMEOUT = 1e-3 # should be several orders of magnitude inferior wrt time spent collecting a trajectory diff --git a/torchrl/envs/__init__.py b/torchrl/envs/__init__.py index 9a9944248b9..e8014bf28ab 100644 --- a/torchrl/envs/__init__.py +++ b/torchrl/envs/__init__.py @@ -3,9 +3,11 @@ # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. +from .batched_envs import ParallelEnv, SerialEnv from .common import EnvBase, EnvMetaData, make_tensordict from .env_creator import EnvCreator, get_env_metadata from .gym_like import default_info_dict_reader, GymLikeEnv +from .libs.envpool import MultiThreadedEnv from .model_based import ModelBasedEnvBase from .transforms import ( ActionMask, @@ -66,4 +68,3 @@ set_exploration_type, step_mdp, ) -from .vec_env import MultiThreadedEnv, ParallelEnv, SerialEnv diff --git a/torchrl/envs/vec_env.py b/torchrl/envs/batched_envs.py similarity index 78% rename from torchrl/envs/vec_env.py rename to torchrl/envs/batched_envs.py index 23cfb8d42d4..56a368d1053 100644 --- a/torchrl/envs/vec_env.py +++ b/torchrl/envs/batched_envs.py @@ -5,18 +5,15 @@ from __future__ import annotations -import importlib -import logging import os from collections import OrderedDict from copy import deepcopy from functools import wraps from multiprocessing import connection from multiprocessing.synchronize import Lock as MpLock -from typing import Any, Callable, Dict, List, Optional, Sequence, Tuple, Union +from typing import Any, Callable, Dict, List, Optional, Sequence, Union from warnings import warn -import numpy as np import torch from tensordict import TensorDict @@ -24,19 +21,14 @@ from tensordict.tensordict import LazyStackedTensorDict, TensorDictBase from torch import multiprocessing as mp from torchrl._utils import _check_for_faulty_process, VERBOSE -from torchrl.data.tensor_specs import ( - CompositeSpec, - DiscreteTensorSpec, - TensorSpec, - UnboundedContinuousTensorSpec, -) from torchrl.data.utils import CloudpickleWrapper, contains_lazy_spec, DEVICE_TYPING -from torchrl.envs.common import _EnvWrapper, EnvBase +from torchrl.envs.common import EnvBase from torchrl.envs.env_creator import get_env_metadata from torchrl.envs.utils import _set_single_key, _sort_keys, clear_mpi_env_vars -_has_envpool = importlib.util.find_spec("envpool") +# legacy +from .libs.envpool import MultiThreadedEnv, MultiThreadedEnvWrapper # noqa: F401 def _check_start(fun): @@ -1136,301 +1128,3 @@ def _run_worker_pipe_shared_mem( else: # don't send env through pipe child_pipe.send(("_".join([cmd, "done"]), None)) - - -class MultiThreadedEnvWrapper(_EnvWrapper): - """Wrapper for envpool-based multithreaded environments.""" - - _verbose: bool = False - - def __init__( - self, - env: Optional["envpool.python.envpool.EnvPoolMixin"] = None, # noqa: F821 - **kwargs, - ): - if not _has_envpool: - raise ImportError( - "envpool python package or one of its dependencies (gym, treevalue) were not found. Please install these dependencies." - ) - if env is not None: - kwargs["env"] = env - self.num_workers = env.config["num_envs"] - # For synchronous mode batch size is equal to the number of workers - self.batch_size = torch.Size([self.num_workers]) - super().__init__(**kwargs) - - # Buffer to keep the latest observation for each worker - # It's a TensorDict when the observation consists of several variables, e.g. "position" and "velocity" - self.obs: Union[torch.tensor, TensorDict] = self.observation_spec.zero() - - def _check_kwargs(self, kwargs: Dict): - if "env" not in kwargs: - raise TypeError("Could not find environment key 'env' in kwargs.") - env = kwargs["env"] - import envpool - - if not isinstance(env, (envpool.python.envpool.EnvPoolMixin,)): - raise TypeError("env is not of type 'envpool.python.envpool.EnvPoolMixin'.") - - def _build_env(self, env: "envpool.python.envpool.EnvPoolMixin"): # noqa: F821 - return env - - def _make_specs( - self, env: "envpool.python.envpool.EnvPoolMixin" # noqa: F821 - ) -> None: # noqa: F821 - from torchrl.envs.libs.gym import set_gym_backend - - with set_gym_backend("gym"): - self.action_spec = self._get_action_spec() - output_spec = self._get_output_spec() - self.observation_spec = output_spec["full_observation_spec"] - self.reward_spec = output_spec["full_reward_spec"] - self.done_spec = output_spec["full_done_spec"] - - def _init_env(self) -> Optional[int]: - pass - - def _reset(self, tensordict: TensorDictBase) -> TensorDictBase: - if tensordict is not None: - reset_workers = tensordict.get("_reset", None) - else: - reset_workers = None - if reset_workers is not None: - reset_data = self._env.reset(np.where(reset_workers.cpu().numpy())[0]) - else: - reset_data = self._env.reset() - tensordict_out = self._transform_reset_output(reset_data, reset_workers) - self.is_closed = False - return tensordict_out - - @torch.no_grad() - def _step(self, tensordict: TensorDictBase) -> TensorDictBase: - action = tensordict.get(self.action_key) - # Action needs to be moved to CPU and converted to numpy before being passed to envpool - action = action.to(torch.device("cpu")) - step_output = self._env.step(action.numpy()) - tensordict_out = self._transform_step_output(step_output) - return tensordict_out - - def _get_action_spec(self) -> TensorSpec: - # local import to avoid importing gym in the script - from torchrl.envs.libs.gym import _gym_to_torchrl_spec_transform - - # Envpool provides Gym-compatible specs as env.spec.action_space and - # DM_Control-compatible specs as env.spec.action_spec(). We use the Gym ones. - - # Gym specs produced by EnvPool don't contain batch_size, we add it to satisfy checks in EnvBase - action_spec = _gym_to_torchrl_spec_transform( - self._env.spec.action_space, - device=self.device, - categorical_action_encoding=True, - ) - action_spec = self._add_shape_to_spec(action_spec) - return action_spec - - def _get_output_spec(self) -> TensorSpec: - return CompositeSpec( - full_observation_spec=self._get_observation_spec(), - full_reward_spec=self._get_reward_spec(), - full_done_spec=self._get_done_spec(), - shape=(self.num_workers,), - device=self.device, - ) - - def _get_observation_spec(self) -> TensorSpec: - # local import to avoid importing gym in the script - from torchrl.envs.libs.gym import _gym_to_torchrl_spec_transform - - # Gym specs produced by EnvPool don't contain batch_size, we add it to satisfy checks in EnvBase - observation_spec = _gym_to_torchrl_spec_transform( - self._env.spec.observation_space, - device=self.device, - categorical_action_encoding=True, - ) - observation_spec = self._add_shape_to_spec(observation_spec) - if isinstance(observation_spec, CompositeSpec): - return observation_spec - return CompositeSpec( - observation=observation_spec, - shape=(self.num_workers,), - device=self.device, - ) - - def _add_shape_to_spec(self, spec: TensorSpec) -> TensorSpec: - return spec.expand((self.num_workers, *spec.shape)) - - def _get_reward_spec(self) -> TensorSpec: - return UnboundedContinuousTensorSpec( - device=self.device, - shape=self.batch_size, - ) - - def _get_done_spec(self) -> TensorSpec: - return DiscreteTensorSpec( - 2, - device=self.device, - shape=self.batch_size, - dtype=torch.bool, - ) - - def __repr__(self) -> str: - return f"{self.__class__.__name__}(num_workers={self.num_workers}, device={self.device})" - - def _transform_reset_output( - self, - envpool_output: Tuple[ - Union["treevalue.TreeValue", np.ndarray], Any # noqa: F821 - ], - reset_workers: Optional[torch.Tensor], - ): - """Process output of envpool env.reset.""" - import treevalue - - observation, _ = envpool_output - if reset_workers is not None: - # Only specified workers were reset - need to set observation buffer values only for them - if isinstance(observation, treevalue.TreeValue): - # If observation contain several fields, it will be returned as treevalue.TreeValue. - # Convert to treevalue.FastTreeValue to allow indexing - observation = treevalue.FastTreeValue(observation) - self.obs[reset_workers] = self._treevalue_or_numpy_to_tensor_or_dict( - observation - ) - else: - # All workers were reset - rewrite the whole observation buffer - self.obs = TensorDict( - self._treevalue_or_numpy_to_tensor_or_dict(observation), - self.batch_size, - device=self.device, - ) - - obs = self.obs.clone(False) - obs.update({self.done_key: self.done_spec.zero()}) - return obs - - def _transform_step_output( - self, envpool_output: Tuple[Any, Any, Any, ...] - ) -> TensorDict: - """Process output of envpool env.step.""" - obs, reward, done, *_ = envpool_output - - obs = self._treevalue_or_numpy_to_tensor_or_dict(obs) - obs.update({self.reward_key: torch.tensor(reward), self.done_key: done}) - self.obs = tensordict_out = TensorDict( - obs, - batch_size=self.batch_size, - device=self.device, - ) - return tensordict_out - - def _treevalue_or_numpy_to_tensor_or_dict( - self, x: Union["treevalue.TreeValue", np.ndarray] # noqa: F821 - ) -> Union[torch.Tensor, Dict[str, torch.Tensor]]: - """Converts observation returned by EnvPool. - - EnvPool step and reset return observation as a numpy array or a TreeValue of numpy arrays, which we convert - to a tensor or a dictionary of tensors. Currently only supports depth 1 trees, but can easily be extended to - arbitrary depth if necessary. - """ - import treevalue - - if isinstance(x, treevalue.TreeValue): - ret = self._treevalue_to_dict(x) - elif not isinstance(x, dict): - ret = {"observation": torch.tensor(x)} - else: - ret = x - return ret - - def _treevalue_to_dict( - self, tv: "treevalue.TreeValue" # noqa: F821 - ) -> Dict[str, Any]: - """Converts TreeValue to a dictionary. - - Currently only supports depth 1 trees, but can easily be extended to arbitrary depth if necessary. - """ - import treevalue - - return {k[0]: torch.tensor(v) for k, v in treevalue.flatten(tv)} - - def _set_seed(self, seed: Optional[int]): - if seed is not None: - print( - "MultiThreadedEnvWrapper._set_seed ignored, as setting seed in an existing envorinment is not\ - supported by envpool. Please create a new environment, passing the seed to the constructor." - ) - - -class MultiThreadedEnv(MultiThreadedEnvWrapper): - """Multithreaded execution of environments based on EnvPool. - - An alternative to ParallelEnv based on multithreading. It's faster, as it doesn't require new process spawning, but - less flexible, as it only supports environments implemented in EnvPool library. - Currently only supports synchronous execution mode, when the batch size is equal to the number of workers, see - https://envpool.readthedocs.io/en/latest/content/python_interface.html#batch-size. - - >>> env = MultiThreadedEnv(num_workers=3, env_name="Pendulum-v1") - >>> env.reset() - >>> env.rand_step() - >>> env.rollout(5) - >>> env.close() - - Args: - num_workers: number of worker threads to create. - env_name: name of the environment, corresponding to task_id in EnvPool. - create_env_kwargs: additional arguments which will be passed to envpool.make. - """ - - def __init__( - self, - num_workers: int, - env_name: str, - create_env_kwargs: Optional[Dict[str, Any]] = None, - **kwargs, - ): - self.env_name = env_name.replace("ALE/", "") # Naming convention of EnvPool - self.num_workers = num_workers - self.batch_size = torch.Size([num_workers]) - self.create_env_kwargs = create_env_kwargs or {} - - kwargs["num_workers"] = num_workers - kwargs["env_name"] = self.env_name - kwargs["create_env_kwargs"] = create_env_kwargs - super().__init__(**kwargs) - - def _build_env( - self, - env_name: str, - num_workers: int, - create_env_kwargs: Optional[Dict[str, Any]], - ) -> Any: - import envpool - - create_env_kwargs = create_env_kwargs or {} - env = envpool.make( - task_id=env_name, - env_type="gym", - num_envs=num_workers, - gym_reset_return_info=True, - **create_env_kwargs, - ) - return super()._build_env(env) - - def _set_seed(self, seed: Optional[int]): - """Library EnvPool only supports setting a seed by recreating the environment.""" - if seed is not None: - logging.debug("Recreating EnvPool environment to set seed.") - self.create_env_kwargs["seed"] = seed - self._env = self._build_env( - env_name=self.env_name, - num_workers=self.num_workers, - create_env_kwargs=self.create_env_kwargs, - ) - - def _check_kwargs(self, kwargs: Dict): - for arg in ["num_workers", "env_name", "create_env_kwargs"]: - if arg not in kwargs: - raise TypeError(f"Expected '{arg}' to be part of kwargs") - - def __repr__(self) -> str: - return f"{self.__class__.__name__}(env={self.env_name}, num_workers={self.num_workers}, device={self.device})" diff --git a/torchrl/envs/common.py b/torchrl/envs/common.py index 56b045cb823..e50621144cf 100644 --- a/torchrl/envs/common.py +++ b/torchrl/envs/common.py @@ -229,10 +229,10 @@ def __init__( ): if device is None: device = torch.device("cpu") - self.__dict__["_done_keys"] = None - self.__dict__["_reward_keys"] = None - self.__dict__["_action_keys"] = None - self.__dict__["_batch_size"] = None + self.__dict__.setdefault("_done_keys", None) + self.__dict__.setdefault("_reward_keys", None) + self.__dict__.setdefault("_action_keys", None) + self.__dict__.setdefault("_batch_size", None) if device is not None: self.__dict__["_device"] = torch.device(device) output_spec = self.__dict__.get("_output_spec", None) diff --git a/torchrl/envs/libs/envpool.py b/torchrl/envs/libs/envpool.py new file mode 100644 index 00000000000..4018ab91e44 --- /dev/null +++ b/torchrl/envs/libs/envpool.py @@ -0,0 +1,322 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +from __future__ import annotations + +import importlib +import logging +from typing import Any, Dict, Optional, Tuple, Union + +import numpy as np +import torch + +from tensordict import TensorDict, TensorDictBase +from torchrl.data import ( + CompositeSpec, + DiscreteTensorSpec, + TensorSpec, + UnboundedContinuousTensorSpec, +) +from torchrl.envs.common import _EnvWrapper + +_has_envpool = importlib.util.find_spec("envpool") is not None + + +class MultiThreadedEnvWrapper(_EnvWrapper): + """Wrapper for envpool-based multithreaded environments.""" + + _verbose: bool = False + + def __init__( + self, + env: Optional["envpool.python.envpool.EnvPoolMixin"] = None, # noqa: F821 + **kwargs, + ): + if not _has_envpool: + raise ImportError( + "envpool python package or one of its dependencies (gym, treevalue) were not found. Please install these dependencies." + ) + if env is not None: + kwargs["env"] = env + self.num_workers = env.config["num_envs"] + # For synchronous mode batch size is equal to the number of workers + self.batch_size = torch.Size([self.num_workers]) + super().__init__(**kwargs) + + # Buffer to keep the latest observation for each worker + # It's a TensorDict when the observation consists of several variables, e.g. "position" and "velocity" + self.obs: Union[torch.tensor, TensorDict] = self.observation_spec.zero() + + def _check_kwargs(self, kwargs: Dict): + if "env" not in kwargs: + raise TypeError("Could not find environment key 'env' in kwargs.") + env = kwargs["env"] + import envpool + + if not isinstance(env, (envpool.python.envpool.EnvPoolMixin,)): + raise TypeError("env is not of type 'envpool.python.envpool.EnvPoolMixin'.") + + def _build_env(self, env: "envpool.python.envpool.EnvPoolMixin"): # noqa: F821 + return env + + def _make_specs( + self, env: "envpool.python.envpool.EnvPoolMixin" # noqa: F821 + ) -> None: # noqa: F821 + from torchrl.envs.libs.gym import set_gym_backend + + with set_gym_backend("gym"): + self.action_spec = self._get_action_spec() + output_spec = self._get_output_spec() + self.observation_spec = output_spec["full_observation_spec"] + self.reward_spec = output_spec["full_reward_spec"] + self.done_spec = output_spec["full_done_spec"] + + def _init_env(self) -> Optional[int]: + pass + + def _reset(self, tensordict: TensorDictBase) -> TensorDictBase: + if tensordict is not None: + reset_workers = tensordict.get("_reset", None) + else: + reset_workers = None + if reset_workers is not None: + reset_data = self._env.reset(np.where(reset_workers.cpu().numpy())[0]) + else: + reset_data = self._env.reset() + tensordict_out = self._transform_reset_output(reset_data, reset_workers) + self.is_closed = False + return tensordict_out + + @torch.no_grad() + def _step(self, tensordict: TensorDictBase) -> TensorDictBase: + action = tensordict.get(self.action_key) + # Action needs to be moved to CPU and converted to numpy before being passed to envpool + action = action.to(torch.device("cpu")) + step_output = self._env.step(action.numpy()) + tensordict_out = self._transform_step_output(step_output) + return tensordict_out + + def _get_action_spec(self) -> TensorSpec: + # local import to avoid importing gym in the script + from torchrl.envs.libs.gym import _gym_to_torchrl_spec_transform + + # Envpool provides Gym-compatible specs as env.spec.action_space and + # DM_Control-compatible specs as env.spec.action_spec(). We use the Gym ones. + + # Gym specs produced by EnvPool don't contain batch_size, we add it to satisfy checks in EnvBase + action_spec = _gym_to_torchrl_spec_transform( + self._env.spec.action_space, + device=self.device, + categorical_action_encoding=True, + ) + action_spec = self._add_shape_to_spec(action_spec) + return action_spec + + def _get_output_spec(self) -> TensorSpec: + return CompositeSpec( + full_observation_spec=self._get_observation_spec(), + full_reward_spec=self._get_reward_spec(), + full_done_spec=self._get_done_spec(), + shape=(self.num_workers,), + device=self.device, + ) + + def _get_observation_spec(self) -> TensorSpec: + # local import to avoid importing gym in the script + from torchrl.envs.libs.gym import _gym_to_torchrl_spec_transform + + # Gym specs produced by EnvPool don't contain batch_size, we add it to satisfy checks in EnvBase + observation_spec = _gym_to_torchrl_spec_transform( + self._env.spec.observation_space, + device=self.device, + categorical_action_encoding=True, + ) + observation_spec = self._add_shape_to_spec(observation_spec) + if isinstance(observation_spec, CompositeSpec): + return observation_spec + return CompositeSpec( + observation=observation_spec, + shape=(self.num_workers,), + device=self.device, + ) + + def _add_shape_to_spec(self, spec: TensorSpec) -> TensorSpec: + return spec.expand((self.num_workers, *spec.shape)) + + def _get_reward_spec(self) -> TensorSpec: + return UnboundedContinuousTensorSpec( + device=self.device, + shape=self.batch_size, + ) + + def _get_done_spec(self) -> TensorSpec: + return DiscreteTensorSpec( + 2, + device=self.device, + shape=self.batch_size, + dtype=torch.bool, + ) + + def __repr__(self) -> str: + return f"{self.__class__.__name__}(num_workers={self.num_workers}, device={self.device})" + + def _transform_reset_output( + self, + envpool_output: Tuple[ + Union["treevalue.TreeValue", np.ndarray], Any # noqa: F821 + ], + reset_workers: Optional[torch.Tensor], + ): + """Process output of envpool env.reset.""" + import treevalue + + observation, _ = envpool_output + if reset_workers is not None: + # Only specified workers were reset - need to set observation buffer values only for them + if isinstance(observation, treevalue.TreeValue): + # If observation contain several fields, it will be returned as treevalue.TreeValue. + # Convert to treevalue.FastTreeValue to allow indexing + observation = treevalue.FastTreeValue(observation) + self.obs[reset_workers] = self._treevalue_or_numpy_to_tensor_or_dict( + observation + ) + else: + # All workers were reset - rewrite the whole observation buffer + self.obs = TensorDict( + self._treevalue_or_numpy_to_tensor_or_dict(observation), + self.batch_size, + device=self.device, + ) + + obs = self.obs.clone(False) + obs.update({self.done_key: self.done_spec.zero()}) + return obs + + def _transform_step_output( + self, envpool_output: Tuple[Any, Any, Any, ...] + ) -> TensorDict: + """Process output of envpool env.step.""" + obs, reward, done, *_ = envpool_output + + obs = self._treevalue_or_numpy_to_tensor_or_dict(obs) + obs.update({self.reward_key: torch.tensor(reward), self.done_key: done}) + self.obs = tensordict_out = TensorDict( + obs, + batch_size=self.batch_size, + device=self.device, + ) + return tensordict_out + + def _treevalue_or_numpy_to_tensor_or_dict( + self, x: Union["treevalue.TreeValue", np.ndarray] # noqa: F821 + ) -> Union[torch.Tensor, Dict[str, torch.Tensor]]: + """Converts observation returned by EnvPool. + + EnvPool step and reset return observation as a numpy array or a TreeValue of numpy arrays, which we convert + to a tensor or a dictionary of tensors. Currently only supports depth 1 trees, but can easily be extended to + arbitrary depth if necessary. + """ + import treevalue + + if isinstance(x, treevalue.TreeValue): + ret = self._treevalue_to_dict(x) + elif not isinstance(x, dict): + ret = {"observation": torch.tensor(x)} + else: + ret = x + return ret + + def _treevalue_to_dict( + self, tv: "treevalue.TreeValue" # noqa: F821 + ) -> Dict[str, Any]: + """Converts TreeValue to a dictionary. + + Currently only supports depth 1 trees, but can easily be extended to arbitrary depth if necessary. + """ + import treevalue + + return {k[0]: torch.tensor(v) for k, v in treevalue.flatten(tv)} + + def _set_seed(self, seed: Optional[int]): + if seed is not None: + print( + "MultiThreadedEnvWrapper._set_seed ignored, as setting seed in an existing envorinment is not\ + supported by envpool. Please create a new environment, passing the seed to the constructor." + ) + + +class MultiThreadedEnv(MultiThreadedEnvWrapper): + """Multithreaded execution of environments based on EnvPool. + + An alternative to ParallelEnv based on multithreading. It's faster, as it doesn't require new process spawning, but + less flexible, as it only supports environments implemented in EnvPool library. + Currently only supports synchronous execution mode, when the batch size is equal to the number of workers, see + https://envpool.readthedocs.io/en/latest/content/python_interface.html#batch-size. + + >>> env = MultiThreadedEnv(num_workers=3, env_name="Pendulum-v1") + >>> env.reset() + >>> env.rand_step() + >>> env.rollout(5) + >>> env.close() + + Args: + num_workers: number of worker threads to create. + env_name: name of the environment, corresponding to task_id in EnvPool. + create_env_kwargs: additional arguments which will be passed to envpool.make. + """ + + def __init__( + self, + num_workers: int, + env_name: str, + create_env_kwargs: Optional[Dict[str, Any]] = None, + **kwargs, + ): + self.env_name = env_name.replace("ALE/", "") # Naming convention of EnvPool + self.num_workers = num_workers + self.batch_size = torch.Size([num_workers]) + self.create_env_kwargs = create_env_kwargs or {} + + kwargs["num_workers"] = num_workers + kwargs["env_name"] = self.env_name + kwargs["create_env_kwargs"] = create_env_kwargs + super().__init__(**kwargs) + + def _build_env( + self, + env_name: str, + num_workers: int, + create_env_kwargs: Optional[Dict[str, Any]], + ) -> Any: + import envpool + + create_env_kwargs = create_env_kwargs or {} + env = envpool.make( + task_id=env_name, + env_type="gym", + num_envs=num_workers, + gym_reset_return_info=True, + **create_env_kwargs, + ) + return super()._build_env(env) + + def _set_seed(self, seed: Optional[int]): + """Library EnvPool only supports setting a seed by recreating the environment.""" + if seed is not None: + logging.debug("Recreating EnvPool environment to set seed.") + self.create_env_kwargs["seed"] = seed + self._env = self._build_env( + env_name=self.env_name, + num_workers=self.num_workers, + create_env_kwargs=self.create_env_kwargs, + ) + + def _check_kwargs(self, kwargs: Dict): + for arg in ["num_workers", "env_name", "create_env_kwargs"]: + if arg not in kwargs: + raise TypeError(f"Expected '{arg}' to be part of kwargs") + + def __repr__(self) -> str: + return f"{self.__class__.__name__}(env={self.env_name}, num_workers={self.num_workers}, device={self.device})" diff --git a/torchrl/envs/vec_envs.py b/torchrl/envs/vec_envs.py new file mode 100644 index 00000000000..73dd159751c --- /dev/null +++ b/torchrl/envs/vec_envs.py @@ -0,0 +1,9 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. +import warnings + +warnings.warn("vec_env.py has moved to batch_envs.py.", category=DeprecationWarning) + +from .batched_envs import * # noqa: F403, F401 From 9b862d312240306704ca67dcfb475428c3c7a9af Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Fri, 15 Sep 2023 09:30:41 +0100 Subject: [PATCH 080/148] [Environment, Docs] SMACv2 and docs on action masking (#1466) Signed-off-by: Matteo Bettini Co-authored-by: vmoens --- .../linux_libs/scripts_smacv2/environment.yml | 21 + .../linux_libs/scripts_smacv2/install.sh | 46 ++ .../linux_libs/scripts_smacv2/post_process.sh | 6 + .../scripts_smacv2/run-clang-format.py | 356 ++++++++++ .../linux_libs/scripts_smacv2/run_test.sh | 32 + .../linux_libs/scripts_smacv2/setup_env.sh | 65 ++ .github/workflows/test-linux-smacv2.yml | 41 ++ docs/source/reference/envs.rst | 50 ++ test/test_libs.py | 90 +++ torchrl/envs/libs/smacv2.py | 633 ++++++++++++++++++ torchrl/envs/utils.py | 14 +- 11 files changed, 1352 insertions(+), 2 deletions(-) create mode 100644 .github/unittest/linux_libs/scripts_smacv2/environment.yml create mode 100755 .github/unittest/linux_libs/scripts_smacv2/install.sh create mode 100755 .github/unittest/linux_libs/scripts_smacv2/post_process.sh create mode 100755 .github/unittest/linux_libs/scripts_smacv2/run-clang-format.py create mode 100755 .github/unittest/linux_libs/scripts_smacv2/run_test.sh create mode 100755 .github/unittest/linux_libs/scripts_smacv2/setup_env.sh create mode 100644 .github/workflows/test-linux-smacv2.yml create mode 100644 torchrl/envs/libs/smacv2.py diff --git a/.github/unittest/linux_libs/scripts_smacv2/environment.yml b/.github/unittest/linux_libs/scripts_smacv2/environment.yml new file mode 100644 index 00000000000..d1e1e1f5edc --- /dev/null +++ b/.github/unittest/linux_libs/scripts_smacv2/environment.yml @@ -0,0 +1,21 @@ +channels: + - pytorch + - defaults +dependencies: + - pip + - pip: + - cloudpickle + - gym + - gym-notices + - importlib-metadata + - zipp + - pytest + - pytest-cov + - pytest-mock + - pytest-instafail + - pytest-rerunfailures + - pytest-error-for-skips + - expecttest + - pyyaml + - numpy==1.23.0 + - git+https://github.com/oxwhirl/smacv2.git diff --git a/.github/unittest/linux_libs/scripts_smacv2/install.sh b/.github/unittest/linux_libs/scripts_smacv2/install.sh new file mode 100755 index 00000000000..cb36c7cc48a --- /dev/null +++ b/.github/unittest/linux_libs/scripts_smacv2/install.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +unset PYTORCH_VERSION +# For unittest, nightly PyTorch is used as the following section, +# so no need to set PYTORCH_VERSION. +# In fact, keeping PYTORCH_VERSION forces us to hardcode PyTorch version in config. + +set -e + +eval "$(./conda/bin/conda shell.bash hook)" +conda activate ./env + +if [ "${CU_VERSION:-}" == cpu ] ; then + version="cpu" +else + if [[ ${#CU_VERSION} -eq 4 ]]; then + CUDA_VERSION="${CU_VERSION:2:1}.${CU_VERSION:3:1}" + elif [[ ${#CU_VERSION} -eq 5 ]]; then + CUDA_VERSION="${CU_VERSION:2:2}.${CU_VERSION:4:1}" + fi + echo "Using CUDA $CUDA_VERSION as determined by CU_VERSION ($CU_VERSION)" + version="$(python -c "print('.'.join(\"${CUDA_VERSION}\".split('.')[:2]))")" +fi + +# submodules +git submodule sync && git submodule update --init --recursive + +printf "Installing PyTorch with %s\n" "${CU_VERSION}" +if [ "${CU_VERSION:-}" == cpu ] ; then + # conda install -y pytorch torchvision cpuonly -c pytorch-nightly + # use pip to install pytorch as conda can frequently pick older release +# conda install -y pytorch cpuonly -c pytorch-nightly + pip3 install --pre torch --extra-index-url https://download.pytorch.org/whl/nightly/cpu --force-reinstall +else + pip3 install --pre torch --extra-index-url https://download.pytorch.org/whl/nightly/cu116 --force-reinstall +fi + +# install tensordict +pip install git+https://github.com/pytorch-labs/tensordict.git + +# smoke test +python -c "import tensordict" + +printf "* Installing torchrl\n" +python setup.py develop +python -c "import torchrl" diff --git a/.github/unittest/linux_libs/scripts_smacv2/post_process.sh b/.github/unittest/linux_libs/scripts_smacv2/post_process.sh new file mode 100755 index 00000000000..e97bf2a7b1b --- /dev/null +++ b/.github/unittest/linux_libs/scripts_smacv2/post_process.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +set -e + +eval "$(./conda/bin/conda shell.bash hook)" +conda activate ./env diff --git a/.github/unittest/linux_libs/scripts_smacv2/run-clang-format.py b/.github/unittest/linux_libs/scripts_smacv2/run-clang-format.py new file mode 100755 index 00000000000..5783a885d86 --- /dev/null +++ b/.github/unittest/linux_libs/scripts_smacv2/run-clang-format.py @@ -0,0 +1,356 @@ +#!/usr/bin/env python +""" +MIT License + +Copyright (c) 2017 Guillaume Papin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +A wrapper script around clang-format, suitable for linting multiple files +and to use for continuous integration. + +This is an alternative API for the clang-format command line. +It runs over multiple files and directories in parallel. +A diff output is produced and a sensible exit code is returned. + +""" + +import argparse +import difflib +import fnmatch +import multiprocessing +import os +import signal +import subprocess +import sys +import traceback +from functools import partial + +try: + from subprocess import DEVNULL # py3k +except ImportError: + DEVNULL = open(os.devnull, "wb") + + +DEFAULT_EXTENSIONS = "c,h,C,H,cpp,hpp,cc,hh,c++,h++,cxx,hxx,cu" + + +class ExitStatus: + SUCCESS = 0 + DIFF = 1 + TROUBLE = 2 + + +def list_files(files, recursive=False, extensions=None, exclude=None): + if extensions is None: + extensions = [] + if exclude is None: + exclude = [] + + out = [] + for file in files: + if recursive and os.path.isdir(file): + for dirpath, dnames, fnames in os.walk(file): + fpaths = [os.path.join(dirpath, fname) for fname in fnames] + for pattern in exclude: + # os.walk() supports trimming down the dnames list + # by modifying it in-place, + # to avoid unnecessary directory listings. + dnames[:] = [ + x + for x in dnames + if not fnmatch.fnmatch(os.path.join(dirpath, x), pattern) + ] + fpaths = [x for x in fpaths if not fnmatch.fnmatch(x, pattern)] + for f in fpaths: + ext = os.path.splitext(f)[1][1:] + if ext in extensions: + out.append(f) + else: + out.append(file) + return out + + +def make_diff(file, original, reformatted): + return list( + difflib.unified_diff( + original, + reformatted, + fromfile=f"{file}\t(original)", + tofile=f"{file}\t(reformatted)", + n=3, + ) + ) + + +class DiffError(Exception): + def __init__(self, message, errs=None): + super().__init__(message) + self.errs = errs or [] + + +class UnexpectedError(Exception): + def __init__(self, message, exc=None): + super().__init__(message) + self.formatted_traceback = traceback.format_exc() + self.exc = exc + + +def run_clang_format_diff_wrapper(args, file): + try: + ret = run_clang_format_diff(args, file) + return ret + except DiffError: + raise + except Exception as e: + raise UnexpectedError(f"{file}: {e.__class__.__name__}: {e}", e) + + +def run_clang_format_diff(args, file): + try: + with open(file, encoding="utf-8") as f: + original = f.readlines() + except OSError as exc: + raise DiffError(str(exc)) + invocation = [args.clang_format_executable, file] + + # Use of utf-8 to decode the process output. + # + # Hopefully, this is the correct thing to do. + # + # It's done due to the following assumptions (which may be incorrect): + # - clang-format will returns the bytes read from the files as-is, + # without conversion, and it is already assumed that the files use utf-8. + # - if the diagnostics were internationalized, they would use utf-8: + # > Adding Translations to Clang + # > + # > Not possible yet! + # > Diagnostic strings should be written in UTF-8, + # > the client can translate to the relevant code page if needed. + # > Each translation completely replaces the format string + # > for the diagnostic. + # > -- http://clang.llvm.org/docs/InternalsManual.html#internals-diag-translation + + try: + proc = subprocess.Popen( + invocation, + stdout=subprocess.PIPE, + stderr=subprocess.PIPE, + universal_newlines=True, + encoding="utf-8", + ) + except OSError as exc: + raise DiffError( + f"Command '{subprocess.list2cmdline(invocation)}' failed to start: {exc}" + ) + proc_stdout = proc.stdout + proc_stderr = proc.stderr + + # hopefully the stderr pipe won't get full and block the process + outs = list(proc_stdout.readlines()) + errs = list(proc_stderr.readlines()) + proc.wait() + if proc.returncode: + raise DiffError( + "Command '{}' returned non-zero exit status {}".format( + subprocess.list2cmdline(invocation), proc.returncode + ), + errs, + ) + return make_diff(file, original, outs), errs + + +def bold_red(s): + return "\x1b[1m\x1b[31m" + s + "\x1b[0m" + + +def colorize(diff_lines): + def bold(s): + return "\x1b[1m" + s + "\x1b[0m" + + def cyan(s): + return "\x1b[36m" + s + "\x1b[0m" + + def green(s): + return "\x1b[32m" + s + "\x1b[0m" + + def red(s): + return "\x1b[31m" + s + "\x1b[0m" + + for line in diff_lines: + if line[:4] in ["--- ", "+++ "]: + yield bold(line) + elif line.startswith("@@ "): + yield cyan(line) + elif line.startswith("+"): + yield green(line) + elif line.startswith("-"): + yield red(line) + else: + yield line + + +def print_diff(diff_lines, use_color): + if use_color: + diff_lines = colorize(diff_lines) + sys.stdout.writelines(diff_lines) + + +def print_trouble(prog, message, use_colors): + error_text = "error:" + if use_colors: + error_text = bold_red(error_text) + print(f"{prog}: {error_text} {message}", file=sys.stderr) + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument( + "--clang-format-executable", + metavar="EXECUTABLE", + help="path to the clang-format executable", + default="clang-format", + ) + parser.add_argument( + "--extensions", + help=f"comma separated list of file extensions (default: {DEFAULT_EXTENSIONS})", + default=DEFAULT_EXTENSIONS, + ) + parser.add_argument( + "-r", + "--recursive", + action="store_true", + help="run recursively over directories", + ) + parser.add_argument("files", metavar="file", nargs="+") + parser.add_argument("-q", "--quiet", action="store_true") + parser.add_argument( + "-j", + metavar="N", + type=int, + default=0, + help="run N clang-format jobs in parallel (default number of cpus + 1)", + ) + parser.add_argument( + "--color", + default="auto", + choices=["auto", "always", "never"], + help="show colored diff (default: auto)", + ) + parser.add_argument( + "-e", + "--exclude", + metavar="PATTERN", + action="append", + default=[], + help="exclude paths matching the given glob-like pattern(s) from recursive search", + ) + + args = parser.parse_args() + + # use default signal handling, like diff return SIGINT value on ^C + # https://bugs.python.org/issue14229#msg156446 + signal.signal(signal.SIGINT, signal.SIG_DFL) + try: + signal.SIGPIPE + except AttributeError: + # compatibility, SIGPIPE does not exist on Windows + pass + else: + signal.signal(signal.SIGPIPE, signal.SIG_DFL) + + colored_stdout = False + colored_stderr = False + if args.color == "always": + colored_stdout = True + colored_stderr = True + elif args.color == "auto": + colored_stdout = sys.stdout.isatty() + colored_stderr = sys.stderr.isatty() + + version_invocation = [args.clang_format_executable, "--version"] + try: + subprocess.check_call(version_invocation, stdout=DEVNULL) + except subprocess.CalledProcessError as e: + print_trouble(parser.prog, str(e), use_colors=colored_stderr) + return ExitStatus.TROUBLE + except OSError as e: + print_trouble( + parser.prog, + f"Command '{subprocess.list2cmdline(version_invocation)}' failed to start: {e}", + use_colors=colored_stderr, + ) + return ExitStatus.TROUBLE + + retcode = ExitStatus.SUCCESS + files = list_files( + args.files, + recursive=args.recursive, + exclude=args.exclude, + extensions=args.extensions.split(","), + ) + + if not files: + return + + njobs = args.j + if njobs == 0: + njobs = multiprocessing.cpu_count() + 1 + njobs = min(len(files), njobs) + + if njobs == 1: + # execute directly instead of in a pool, + # less overhead, simpler stacktraces + it = (run_clang_format_diff_wrapper(args, file) for file in files) + pool = None + else: + pool = multiprocessing.Pool(njobs) + it = pool.imap_unordered(partial(run_clang_format_diff_wrapper, args), files) + while True: + try: + outs, errs = next(it) + except StopIteration: + break + except DiffError as e: + print_trouble(parser.prog, str(e), use_colors=colored_stderr) + retcode = ExitStatus.TROUBLE + sys.stderr.writelines(e.errs) + except UnexpectedError as e: + print_trouble(parser.prog, str(e), use_colors=colored_stderr) + sys.stderr.write(e.formatted_traceback) + retcode = ExitStatus.TROUBLE + # stop at the first unexpected error, + # something could be very wrong, + # don't process all files unnecessarily + if pool: + pool.terminate() + break + else: + sys.stderr.writelines(errs) + if outs == []: + continue + if not args.quiet: + print_diff(outs, use_color=colored_stdout) + if retcode == ExitStatus.SUCCESS: + retcode = ExitStatus.DIFF + return retcode + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/.github/unittest/linux_libs/scripts_smacv2/run_test.sh b/.github/unittest/linux_libs/scripts_smacv2/run_test.sh new file mode 100755 index 00000000000..65fd7462df3 --- /dev/null +++ b/.github/unittest/linux_libs/scripts_smacv2/run_test.sh @@ -0,0 +1,32 @@ +#!/usr/bin/env bash + +set -e + +eval "$(./conda/bin/conda shell.bash hook)" +conda activate ./env +apt-get update && apt-get install -y git wget + + +export PYTORCH_TEST_WITH_SLOW='1' +python -m torch.utils.collect_env +# Avoid error: "fatal: unsafe repository" +git config --global --add safe.directory '*' + +root_dir="$(git rev-parse --show-toplevel)" +env_dir="${root_dir}/env" +lib_dir="${env_dir}/lib" +export SC2PATH="${root_dir}/StarCraftII" +echo 'SC2PATH is set to ' "$SC2PATH" + +# solves ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$lib_dir +export MKL_THREADING_LAYER=GNU +# more logging +export MAGNUM_LOG=verbose MAGNUM_GPU_VALIDATION=ON + +# this workflow only tests the libs +python -c "import smacv2" + +python .github/unittest/helpers/coverage_run_parallel.py -m pytest test/test_libs.py --instafail -v --durations 200 --capture no -k TestSmacv2 --error-for-skips +coverage combine +coverage xml -i diff --git a/.github/unittest/linux_libs/scripts_smacv2/setup_env.sh b/.github/unittest/linux_libs/scripts_smacv2/setup_env.sh new file mode 100755 index 00000000000..04080cc8932 --- /dev/null +++ b/.github/unittest/linux_libs/scripts_smacv2/setup_env.sh @@ -0,0 +1,65 @@ +#!/usr/bin/env bash + +# This script is for setting up environment in which unit test is ran. +# To speed up the CI time, the resulting environment is cached. +# +# Do not install PyTorch and torchvision here, otherwise they also get cached. + +set -e + +this_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +# Avoid error: "fatal: unsafe repository" +git config --global --add safe.directory '*' +root_dir="$(git rev-parse --show-toplevel)" +conda_dir="${root_dir}/conda" +env_dir="${root_dir}/env" + +cd "${root_dir}" + +case "$(uname -s)" in + Darwin*) os=MacOSX;; + *) os=Linux +esac + +# 1. Install conda at ./conda +if [ ! -d "${conda_dir}" ]; then + printf "* Installing conda\n" + wget -O miniconda.sh "http://repo.continuum.io/miniconda/Miniconda3-latest-${os}-x86_64.sh" + bash ./miniconda.sh -b -f -p "${conda_dir}" +fi +eval "$(${conda_dir}/bin/conda shell.bash hook)" + +# 2. Create test environment at ./env +printf "python: ${PYTHON_VERSION}\n" +if [ ! -d "${env_dir}" ]; then + printf "* Creating a test environment\n" + conda create --prefix "${env_dir}" -y python="$PYTHON_VERSION" +fi +conda activate "${env_dir}" + +# 4. Install Conda dependencies +printf "* Installing dependencies (except PyTorch)\n" +echo " - python=${PYTHON_VERSION}" >> "${this_dir}/environment.yml" +cat "${this_dir}/environment.yml" + +pip install pip --upgrade + +conda env update --file "${this_dir}/environment.yml" --prune + +# 5. Install StarCraft 2 with SMACv2 maps +starcraft_path="${root_dir}/StarCraftII" +map_dir="${starcraft_path}/Maps" +printf "* Installing StarCraft 2 and SMACv2 maps into ${starcraft_path}\n" +cd "${root_dir}" +# TODO: discuss how we can cache it to avoid downloading ~4 GB on each run. +# e.g adding this into the image learn( which one is used and how it is maintained) +wget https://blzdistsc2-a.akamaihd.net/Linux/SC2.4.10.zip +# The archive contains StarCraftII folder. Password comes from the documentation. +unzip -qo -P iagreetotheeula SC2.4.10.zip +mkdir -p "${map_dir}" +# Install Maps +wget https://github.com/oxwhirl/smacv2/releases/download/maps/SMAC_Maps.zip +unzip SMAC_Maps.zip +mkdir "${map_dir}/SMAC_Maps" +mv *.SC2Map "${map_dir}/SMAC_Maps" +printf "StarCraft II and SMAC are installed." diff --git a/.github/workflows/test-linux-smacv2.yml b/.github/workflows/test-linux-smacv2.yml new file mode 100644 index 00000000000..159c93fb1a1 --- /dev/null +++ b/.github/workflows/test-linux-smacv2.yml @@ -0,0 +1,41 @@ +name: SMACv2 Tests on Linux + +on: + pull_request: + push: + branches: + - nightly + - main + - release/* + workflow_dispatch: + +concurrency: + # Documentation suggests ${{ github.head_ref }}, but that's only available on pull_request/pull_request_target triggers, so using ${{ github.ref }}. + # On master, we want all builds to complete even if merging happens faster to make it easier to discover at which point something broke. + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && format('ci-master-{0}', github.sha) || format('ci-{0}', github.ref) }} + cancel-in-progress: true + +jobs: + unittests: + if: ${{ github.event_name == 'push' || contains(github.event.pull_request.labels.*.name, 'Environments') }} + uses: pytorch/test-infra/.github/workflows/linux_job.yml@main + with: + repository: pytorch/rl + runner: "linux.g5.4xlarge.nvidia.gpu" + gpu-arch-type: cuda + gpu-arch-version: "11.7" + timeout: 120 + script: | + set -euo pipefail + export PYTHON_VERSION="3.9" + export CU_VERSION="11.7" + export TAR_OPTIONS="--no-same-owner" + export UPLOAD_CHANNEL="nightly" + export TF_CPP_MIN_LOG_LEVEL=0 + + nvidia-smi + + bash .github/unittest/linux_libs/scripts_smacv2/setup_env.sh + bash .github/unittest/linux_libs/scripts_smacv2/install.sh + bash .github/unittest/linux_libs/scripts_smacv2/run_test.sh + bash .github/unittest/linux_libs/scripts_smacv2/post_process.sh diff --git a/docs/source/reference/envs.rst b/docs/source/reference/envs.rst index 6527418ea75..26b5cb00e6b 100644 --- a/docs/source/reference/envs.rst +++ b/docs/source/reference/envs.rst @@ -500,6 +500,54 @@ to be able to create this other composition: VIPRewardTransform VIPTransform +Environments with masked actions +-------------------------------- + +In some environments with discrete actions, the actions available to the agent might change throughout execution. +In such cases the environments will output an action mask (under the ``"action_mask"`` key by default). +This mask needs to be used to filter out unavailable actions for that step. + +If you are using a custom policy you can pass this mask to your probability distribution like so: + +.. code-block:: + :caption: Categorical policy with action mask + + >>> from tensordict.nn import TensorDictModule, ProbabilisticTensorDictModule, TensorDictSequential + >>> import torch.nn as nn + >>> from torchrl.modules import MaskedCategorical + >>> module = TensorDictModule( + >>> nn.Linear(in_feats, out_feats), + >>> in_keys=["observation"], + >>> out_keys=["logits"], + >>> ) + >>> dist = ProbabilisticTensorDictModule( + >>> in_keys={"logits": "logits", "mask": "action_mask"}, + >>> out_keys=["action"], + >>> distribution_class=MaskedCategorical, + >>> ) + >>> actor = TensorDictSequential(module, dist) + +If you want to use a default policy, you will need to wrap your environment in the :class:`~torchrl.envs.transforms.ActionMask` +transform. This transform can take care of updating the action mask in the action spec in order for the default policy +to always know what the latest available actions are. You can do this like so: + +.. code-block:: + :caption: How to use the action mask transform + + >>> from tensordict.nn import TensorDictModule, ProbabilisticTensorDictModule, TensorDictSequential + >>> import torch.nn as nn + >>> from torchrl.envs.transforms import TransformedEnv, ActionMask + >>> env = TransformedEnv( + >>> your_base_env + >>> ActionMask(action_key="action", mask_key="action_mask"), + >>> ) + +.. note:: + In case you are using a parallel environment it is important to add the transform to the parallel enviornment itself + and not to its sub-environments. + + + Recorders --------- @@ -639,5 +687,7 @@ the following function will return ``1`` when queried: openml.OpenMLEnv pettingzoo.PettingZooEnv pettingzoo.PettingZooWrapper + smacv2.SMACv2Env + smacv2.SMACv2Wrapper vmas.VmasEnv vmas.VmasWrapper diff --git a/test/test_libs.py b/test/test_libs.py index 1d6b341b710..b17c84de455 100644 --- a/test/test_libs.py +++ b/test/test_libs.py @@ -4,6 +4,9 @@ # LICENSE file in the root directory of this source tree. import importlib +from torchrl.envs.transforms import ActionMask, TransformedEnv +from torchrl.modules import MaskedCategorical + _has_isaac = importlib.util.find_spec("isaacgym") is not None if _has_isaac: @@ -35,6 +38,11 @@ ) from packaging import version from tensordict import LazyStackedTensorDict +from tensordict.nn import ( + ProbabilisticTensorDictModule, + TensorDictModule, + TensorDictSequential, +) from tensordict.tensordict import assert_allclose_td, TensorDict from torch import nn from torchrl._utils import implement_for @@ -76,6 +84,7 @@ _has_sklearn = importlib.util.find_spec("sklearn") is not None +from torchrl.envs.libs.smacv2 import _has_smacv2, SMACv2Env if _has_gym: try: @@ -1878,6 +1887,87 @@ def test_robohive(self, envname, from_pixels): check_env_specs(env) +@pytest.mark.skipif(not _has_smacv2, reason="SMACv2 not found") +class TestSmacv2: + def test_env_procedural(self): + distribution_config = { + "n_units": 5, + "n_enemies": 6, + "team_gen": { + "dist_type": "weighted_teams", + "unit_types": ["marine", "marauder", "medivac"], + "exception_unit_types": ["medivac"], + "weights": [0.5, 0.2, 0.3], + "observe": True, + }, + "start_positions": { + "dist_type": "surrounded_and_reflect", + "p": 0.5, + "n_enemies": 5, + "map_x": 32, + "map_y": 32, + }, + } + env = SMACv2Env( + map_name="10gen_terran", + capability_config=distribution_config, + seed=0, + ) + check_env_specs(env, seed=None) + env.close() + + @pytest.mark.parametrize("categorical_actions", [True, False]) + @pytest.mark.parametrize("map", ["MMM2", "3s_vs_5z"]) + def test_env(self, map: str, categorical_actions): + env = SMACv2Env( + map_name=map, + categorical_actions=categorical_actions, + seed=0, + ) + check_env_specs(env, seed=None) + env.close() + + def test_parallel_env(self): + env = TransformedEnv( + ParallelEnv( + num_workers=2, + create_env_fn=lambda: SMACv2Env( + map_name="3s_vs_5z", + seed=0, + ), + ), + ActionMask( + action_key=("agents", "action"), mask_key=("agents", "action_mask") + ), + ) + check_env_specs(env, seed=None) + env.close() + + def test_collector(self): + env = SMACv2Env(map_name="MMM2", seed=0, categorical_actions=True) + in_feats = env.observation_spec["agents", "observation"].shape[-1] + out_feats = env.action_spec.space.n + + module = TensorDictModule( + nn.Linear(in_feats, out_feats), + in_keys=[("agents", "observation")], + out_keys=[("agents", "logits")], + ) + prob = ProbabilisticTensorDictModule( + in_keys={"logits": ("agents", "logits"), "mask": ("agents", "action_mask")}, + out_keys=[("agents", "action")], + distribution_class=MaskedCategorical, + ) + actor = TensorDictSequential(module, prob) + + collector = SyncDataCollector( + env, policy=actor, frames_per_batch=20, total_frames=40 + ) + for _ in collector: + break + collector.shutdown() + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/torchrl/envs/libs/smacv2.py b/torchrl/envs/libs/smacv2.py new file mode 100644 index 00000000000..0c0bda35d28 --- /dev/null +++ b/torchrl/envs/libs/smacv2.py @@ -0,0 +1,633 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. +import importlib +import re + +from typing import Dict, Optional + +import torch +from tensordict import TensorDict, TensorDictBase + +from torchrl.data import ( + BoundedTensorSpec, + CompositeSpec, + DiscreteTensorSpec, + OneHotDiscreteTensorSpec, + UnboundedContinuousTensorSpec, +) +from torchrl.envs.common import _EnvWrapper + +from torchrl.envs.utils import ACTION_MASK_ERROR + + +_has_smacv2 = importlib.util.find_spec("smacv2") is not None + + +def _get_envs(): + if not _has_smacv2: + return [] + from smacv2.env.starcraft2.maps import smac_maps + + return list(smac_maps.get_smac_map_registry().keys()) + + +class SMACv2Wrapper(_EnvWrapper): + """SMACv2 (StarCraft Multi-Agent Challenge v2) environment wrapper. + + To install the environment follow the following `guide `__. + + Examples: + >>> from torchrl.envs.libs.smacv2 import SMACv2Wrapper + >>> import smacv2 + >>> print(SMACv2Wrapper.available_envs) + ['10gen_terran', '10gen_zerg', '10gen_protoss', '3m', '8m', '25m', '5m_vs_6m', '8m_vs_9m', '10m_vs_11m', + '27m_vs_30m', 'MMM', 'MMM2', '2s3z', '3s5z', '3s5z_vs_3s6z', '3s_vs_3z', '3s_vs_4z', '3s_vs_5z', '1c3s5z', + '2m_vs_1z', 'corridor', '6h_vs_8z', '2s_vs_1sc', 'so_many_baneling', 'bane_vs_bane', '2c_vs_64zg'] + >>> # You can use old SMAC maps + >>> env = SMACv2Wrapper(smacv2.env.StarCraft2Env(map_name="MMM2"), categorical_actions=False) + >>> print(env.rollout(5)) + TensorDict( + fields={ + agents: TensorDict( + fields={ + action: Tensor(shape=torch.Size([5, 10, 18]), device=cpu, dtype=torch.int64, is_shared=False), + action_mask: Tensor(shape=torch.Size([5, 10, 18]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([5, 10, 176]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([5, 10]), + device=cpu, + is_shared=False), + done: Tensor(shape=torch.Size([5, 1]), device=cpu, dtype=torch.bool, is_shared=False), + info: TensorDict( + fields={ + battle_won: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.bool, is_shared=False), + dead_allies: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.int64, is_shared=False), + dead_enemies: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.int64, is_shared=False), + episode_limit: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.bool, is_shared=False)}, + batch_size=torch.Size([5]), + device=cpu, + is_shared=False), + next: TensorDict( + fields={ + agents: TensorDict( + fields={ + action_mask: Tensor(shape=torch.Size([5, 10, 18]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([5, 10, 176]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([5, 10]), + device=cpu, + is_shared=False), + done: Tensor(shape=torch.Size([5, 1]), device=cpu, dtype=torch.bool, is_shared=False), + info: TensorDict( + fields={ + battle_won: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.bool, is_shared=False), + dead_allies: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.int64, is_shared=False), + dead_enemies: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.int64, is_shared=False), + episode_limit: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.bool, is_shared=False)}, + batch_size=torch.Size([5]), + device=cpu, + is_shared=False), + reward: Tensor(shape=torch.Size([5, 1]), device=cpu, dtype=torch.float32, is_shared=False), + state: Tensor(shape=torch.Size([5, 322]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([5]), + device=cpu, + is_shared=False), + state: Tensor(shape=torch.Size([5, 322]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([5]), + device=cpu, + is_shared=False) + >>> # Or the new features for procedural generation + >>> distribution_config = { + ... "n_units": 5, + ... "n_enemies": 6, + ... "team_gen": { + ... "dist_type": "weighted_teams", + ... "unit_types": ["marine", "marauder", "medivac"], + ... "exception_unit_types": ["medivac"], + ... "weights": [0.5, 0.2, 0.3], + ... "observe": True, + ... }, + ... "start_positions": { + ... "dist_type": "surrounded_and_reflect", + ... "p": 0.5, + ... "n_enemies": 5, + ... "map_x": 32, + ... "map_y": 32, + ... }, + ... } + >>> env = SMACv2Wrapper( + ... smacv2.env.StarCraft2Env( + ... map_name="10gen_terran", + ... capability_config=distribution_config, + ... ) + ... ) + >>> print(env.rollout(4)) + TensorDict( + fields={ + agents: TensorDict( + fields={ + action: Tensor(shape=torch.Size([4, 5, 12]), device=cpu, dtype=torch.int64, is_shared=False), + action_mask: Tensor(shape=torch.Size([4, 5, 12]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([4, 5, 88]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([4, 5]), + device=cpu, + is_shared=False), + done: Tensor(shape=torch.Size([4, 1]), device=cpu, dtype=torch.bool, is_shared=False), + info: TensorDict( + fields={ + battle_won: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.bool, is_shared=False), + dead_allies: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.int64, is_shared=False), + dead_enemies: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.int64, is_shared=False), + episode_limit: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.bool, is_shared=False)}, + batch_size=torch.Size([4]), + device=cpu, + is_shared=False), + next: TensorDict( + fields={ + agents: TensorDict( + fields={ + action_mask: Tensor(shape=torch.Size([4, 5, 12]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([4, 5, 88]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([4, 5]), + device=cpu, + is_shared=False), + done: Tensor(shape=torch.Size([4, 1]), device=cpu, dtype=torch.bool, is_shared=False), + info: TensorDict( + fields={ + battle_won: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.bool, is_shared=False), + dead_allies: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.int64, is_shared=False), + dead_enemies: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.int64, is_shared=False), + episode_limit: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.bool, is_shared=False)}, + batch_size=torch.Size([4]), + device=cpu, + is_shared=False), + reward: Tensor(shape=torch.Size([4, 1]), device=cpu, dtype=torch.float32, is_shared=False), + state: Tensor(shape=torch.Size([4, 131]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([4]), + device=cpu, + is_shared=False), + state: Tensor(shape=torch.Size([4, 131]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([4]), + device=cpu, + is_shared=False) + """ + + git_url = "https://github.com/oxwhirl/smacv2" + libname = "smacv2" + available_envs = _get_envs() + + def __init__( + self, + env: "smacv2.env.StarCraft2Env" = None, # noqa: F821 + categorical_actions: bool = True, + **kwargs, + ): + if env is not None: + kwargs["env"] = env + self.categorical_actions = categorical_actions + + super().__init__(**kwargs) + + @property + def lib(self): + import smacv2 + + return smacv2 + + def _check_kwargs(self, kwargs: Dict): + import smacv2 + + if "env" not in kwargs: + raise TypeError("Could not find environment key 'env' in kwargs.") + env = kwargs["env"] + if not isinstance(env, smacv2.env.StarCraft2Env): + raise TypeError("env is not of type 'smacv2.env.StarCraft2Env'.") + + def _build_env( + self, + env: "smacv2.env.StarCraft2Env", # noqa: F821 + ): + if len(self.batch_size): + raise RuntimeError( + f"SMACv2 does not support custom batch_size {self.batch_size}." + ) + + return env + + def _make_specs(self, env: "smacv2.env.StarCraft2Env") -> None: # noqa: F821 + self.group_map = {"agents": [str(i) for i in range(self.n_agents)]} + self.reward_spec = UnboundedContinuousTensorSpec( + shape=torch.Size((1,)), + device=self.device, + ) + self.done_spec = DiscreteTensorSpec( + n=2, + shape=torch.Size((1,)), + dtype=torch.bool, + device=self.device, + ) + self.action_spec = self._make_action_spec() + self.observation_spec = self._make_observation_spec() + + def _init_env(self) -> None: + self._env.reset() + self._update_action_mask() + + def _make_action_spec(self) -> CompositeSpec: + if self.categorical_actions: + action_spec = DiscreteTensorSpec( + self.n_actions, + shape=torch.Size((self.n_agents,)), + device=self.device, + dtype=torch.long, + ) + else: + action_spec = OneHotDiscreteTensorSpec( + self.n_actions, + shape=torch.Size((self.n_agents, self.n_actions)), + device=self.device, + dtype=torch.long, + ) + spec = CompositeSpec( + { + "agents": CompositeSpec( + {"action": action_spec}, shape=torch.Size((self.n_agents,)) + ) + } + ) + return spec + + def _make_observation_spec(self) -> CompositeSpec: + obs_spec = BoundedTensorSpec( + minimum=-1.0, + maximum=1.0, + shape=torch.Size([self.n_agents, self.get_obs_size()]), + device=self.device, + dtype=torch.float32, + ) + info_spec = CompositeSpec( + { + "battle_won": DiscreteTensorSpec( + 2, dtype=torch.bool, device=self.device + ), + "episode_limit": DiscreteTensorSpec( + 2, dtype=torch.bool, device=self.device + ), + "dead_allies": BoundedTensorSpec( + minimum=0, + maximum=self.n_agents, + dtype=torch.long, + device=self.device, + shape=(), + ), + "dead_enemies": BoundedTensorSpec( + minimum=0, + maximum=self.n_enemies, + dtype=torch.long, + device=self.device, + shape=(), + ), + } + ) + mask_spec = DiscreteTensorSpec( + 2, + torch.Size([self.n_agents, self.n_actions]), + device=self.device, + dtype=torch.bool, + ) + spec = CompositeSpec( + { + "agents": CompositeSpec( + {"observation": obs_spec, "action_mask": mask_spec}, + shape=torch.Size((self.n_agents,)), + ), + "state": BoundedTensorSpec( + minimum=-1.0, + maximum=1.0, + shape=torch.Size((self.get_state_size(),)), + device=self.device, + dtype=torch.float32, + ), + "info": info_spec, + } + ) + return spec + + def _set_seed(self, seed: Optional[int]): + if seed is not None: + raise NotImplementedError( + "Seed cannot be changed once environment was created." + ) + + def get_obs(self): + obs = self._env.get_obs() + return self._to_tensor(obs) + + def get_state(self): + state = self._env.get_state() + return self._to_tensor(state) + + def _to_tensor(self, value): + return torch.tensor(value, device=self.device, dtype=torch.float32) + + def _reset( + self, tensordict: Optional[TensorDictBase] = None, **kwargs + ) -> TensorDictBase: + + obs, state = self._env.reset() + + # collect outputs + obs = self._to_tensor(obs) + state = self._to_tensor(state) + info = self.observation_spec["info"].zero() + + mask = self._update_action_mask() + + # build results + agents_td = TensorDict( + {"observation": obs, "action_mask": mask}, batch_size=(self.n_agents,) + ) + tensordict_out = TensorDict( + source={"agents": agents_td, "state": state, "info": info}, + batch_size=(), + device=self.device, + ) + + return tensordict_out + + def _step(self, tensordict: TensorDictBase) -> TensorDictBase: + # perform actions + action = tensordict.get(("agents", "action")) + action_np = self.action_spec.to_numpy(action) + + # Actions are validated by the environment. + try: + reward, done, info = self._env.step(action_np) + except AssertionError as err: + if re.match(r"Agent . cannot perform action .", str(err)): + raise ACTION_MASK_ERROR + else: + raise err + + # collect outputs + obs = self.get_obs() + state = self.get_state() + info = self.observation_spec["info"].encode(info) + if "episode_limit" not in info.keys(): + info["episode_limit"] = self.observation_spec["info"][ + "episode_limit" + ].zero() + + reward = torch.tensor( + reward, device=self.device, dtype=torch.float32 + ).unsqueeze(-1) + done = torch.tensor(done, device=self.device, dtype=torch.bool).unsqueeze(-1) + + mask = self._update_action_mask() + + # build results + agents_td = TensorDict( + {"observation": obs, "action_mask": mask}, batch_size=(self.n_agents,) + ) + + tensordict_out = TensorDict( + source={ + "agents": agents_td, + "state": state, + "info": info, + "reward": reward, + "done": done, + }, + batch_size=(), + device=self.device, + ) + + return tensordict_out + + def _update_action_mask(self): + mask = torch.tensor( + self.get_avail_actions(), dtype=torch.bool, device=self.device + ) + self.action_spec.update_mask(mask) + return mask + + def close(self): + # Closes StarCraft II + self._env.close() + + def get_agent_type(self, agent_index: int) -> str: + """Get the agent type string. + + Given the agent index, get its unit type name. + + Args: + agent_index (int): the index of the agent to get the type of + + """ + if agent_index < 0 or agent_index >= self.n_agents: + raise ValueError(f"Agent index out of range, {self.n_agents} available") + + agent_info = self.agents[agent_index] + if agent_info.unit_type == self.marine_id: + return "marine" + elif agent_info.unit_type == self.marauder_id: + return "marauder" + elif agent_info.unit_type == self.medivac_id: + return "medivac" + elif agent_info.unit_type == self.hydralisk_id: + return "hydralisk" + elif agent_info.unit_type == self.zergling_id: + return "zergling" + elif agent_info.unit_type == self.baneling_id: + return "baneling" + elif agent_info.unit_type == self.stalker_id: + return "stalker" + elif agent_info.unit_type == self.colossus_id: + return "colossus" + elif agent_info.unit_type == self.zealot_id: + return "zealot" + else: + raise AssertionError(f"Agent type {agent_info.unit_type} unidentified") + + +class SMACv2Env(SMACv2Wrapper): + """SMACv2 (StarCraft Multi-Agent Challenge v2) environment wrapper. + + To install the environment follow the following `guide `__. + + Examples: + >>> from torchrl.envs.libs.smacv2 import SMACv2Env + >>> print(SMACv2Env.available_envs) + ['10gen_terran', '10gen_zerg', '10gen_protoss', '3m', '8m', '25m', '5m_vs_6m', '8m_vs_9m', '10m_vs_11m', + '27m_vs_30m', 'MMM', 'MMM2', '2s3z', '3s5z', '3s5z_vs_3s6z', '3s_vs_3z', '3s_vs_4z', '3s_vs_5z', '1c3s5z', + '2m_vs_1z', 'corridor', '6h_vs_8z', '2s_vs_1sc', 'so_many_baneling', 'bane_vs_bane', '2c_vs_64zg'] + >>> # You can use old SMAC maps + >>> env = SMACv2Env(map_name="MMM2") + >>> print(env.rollout(5) + TensorDict( + fields={ + agents: TensorDict( + fields={ + action: Tensor(shape=torch.Size([5, 10, 18]), device=cpu, dtype=torch.int64, is_shared=False), + action_mask: Tensor(shape=torch.Size([5, 10, 18]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([5, 10, 176]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([5, 10]), + device=cpu, + is_shared=False), + done: Tensor(shape=torch.Size([5, 1]), device=cpu, dtype=torch.bool, is_shared=False), + info: TensorDict( + fields={ + battle_won: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.bool, is_shared=False), + dead_allies: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.int64, is_shared=False), + dead_enemies: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.int64, is_shared=False), + episode_limit: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.bool, is_shared=False)}, + batch_size=torch.Size([5]), + device=cpu, + is_shared=False), + next: TensorDict( + fields={ + agents: TensorDict( + fields={ + action_mask: Tensor(shape=torch.Size([5, 10, 18]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([5, 10, 176]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([5, 10]), + device=cpu, + is_shared=False), + done: Tensor(shape=torch.Size([5, 1]), device=cpu, dtype=torch.bool, is_shared=False), + info: TensorDict( + fields={ + battle_won: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.bool, is_shared=False), + dead_allies: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.int64, is_shared=False), + dead_enemies: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.int64, is_shared=False), + episode_limit: Tensor(shape=torch.Size([5]), device=cpu, dtype=torch.bool, is_shared=False)}, + batch_size=torch.Size([5]), + device=cpu, + is_shared=False), + reward: Tensor(shape=torch.Size([5, 1]), device=cpu, dtype=torch.float32, is_shared=False), + state: Tensor(shape=torch.Size([5, 322]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([5]), + device=cpu, + is_shared=False), + state: Tensor(shape=torch.Size([5, 322]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([5]), + device=cpu, + is_shared=False) + >>> # Or the new features for procedural generation + >>> distribution_config = { + ... "n_units": 5, + ... "n_enemies": 6, + ... "team_gen": { + ... "dist_type": "weighted_teams", + ... "unit_types": ["marine", "marauder", "medivac"], + ... "exception_unit_types": ["medivac"], + ... "weights": [0.5, 0.2, 0.3], + ... "observe": True, + ... }, + ... "start_positions": { + ... "dist_type": "surrounded_and_reflect", + ... "p": 0.5, + ... "n_enemies": 5, + ... "map_x": 32, + ... "map_y": 32, + ... }, + ... } + >>> env = SMACv2Env( + ... map_name="10gen_terran", + ... capability_config=distribution_config, + ... categorical_actions=False, + ... ) + >>> print(env.rollout(4)) + TensorDict( + fields={ + agents: TensorDict( + fields={ + action: Tensor(shape=torch.Size([4, 5, 12]), device=cpu, dtype=torch.int64, is_shared=False), + action_mask: Tensor(shape=torch.Size([4, 5, 12]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([4, 5, 88]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([4, 5]), + device=cpu, + is_shared=False), + done: Tensor(shape=torch.Size([4, 1]), device=cpu, dtype=torch.bool, is_shared=False), + info: TensorDict( + fields={ + battle_won: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.bool, is_shared=False), + dead_allies: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.int64, is_shared=False), + dead_enemies: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.int64, is_shared=False), + episode_limit: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.bool, is_shared=False)}, + batch_size=torch.Size([4]), + device=cpu, + is_shared=False), + next: TensorDict( + fields={ + agents: TensorDict( + fields={ + action_mask: Tensor(shape=torch.Size([4, 5, 12]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([4, 5, 88]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([4, 5]), + device=cpu, + is_shared=False), + done: Tensor(shape=torch.Size([4, 1]), device=cpu, dtype=torch.bool, is_shared=False), + info: TensorDict( + fields={ + battle_won: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.bool, is_shared=False), + dead_allies: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.int64, is_shared=False), + dead_enemies: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.int64, is_shared=False), + episode_limit: Tensor(shape=torch.Size([4]), device=cpu, dtype=torch.bool, is_shared=False)}, + batch_size=torch.Size([4]), + device=cpu, + is_shared=False), + reward: Tensor(shape=torch.Size([4, 1]), device=cpu, dtype=torch.float32, is_shared=False), + state: Tensor(shape=torch.Size([4, 131]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([4]), + device=cpu, + is_shared=False), + state: Tensor(shape=torch.Size([4, 131]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([4]), + device=cpu, + is_shared=False) + """ + + def __init__( + self, + map_name: str, + capability_config: Optional[Dict] = None, + seed: Optional[int] = None, + categorical_actions: bool = True, + **kwargs, + ): + if not _has_smacv2: + raise ImportError( + f"smacv2 python package was not found. Please install this dependency. " + f"More info: {self.git_url}." + ) + kwargs["map_name"] = map_name + kwargs["capability_config"] = capability_config + kwargs["seed"] = seed + kwargs["categorical_actions"] = categorical_actions + + super().__init__(**kwargs) + + def _check_kwargs(self, kwargs: Dict): + if "map_name" not in kwargs: + raise TypeError("Expected 'map_name' to be part of kwargs") + + def _build_env( + self, + map_name: str, + capability_config: Optional[Dict] = None, + seed: Optional[int] = None, + **kwargs, + ) -> "smacv2.env.StarCraft2Env": # noqa: F821 + import smacv2 + + if capability_config is not None: + env = smacv2.env.StarCraftCapabilityEnvWrapper( + capability_config=capability_config, + map_name=map_name, + seed=seed, + **kwargs, + ) + else: + env = smacv2.env.StarCraft2Env(map_name=map_name, seed=seed, **kwargs) + + return super()._build_env(env) diff --git a/torchrl/envs/utils.py b/torchrl/envs/utils.py index e4d41d14bfa..7f6d3341867 100644 --- a/torchrl/envs/utils.py +++ b/torchrl/envs/utils.py @@ -47,6 +47,15 @@ DONE_AFTER_RESET_ERROR = RuntimeError( "Env was done after reset on specified '_reset' dimensions. This is (currently) not allowed." ) +ACTION_MASK_ERROR = RuntimeError( + "An out-of-bounds actions has been provided to an env with an 'action_mask' output." + " If you are using a custom policy, make sure to take the action mask into account when computing the output." + " If you are using a default policy, please add the torchrl.envs.transforms.ActionMask transform to your environment." + "If you are using a ParallelEnv or another batched inventor, " + "make sure to add the transform to the ParallelEnv (and not to the sub-environments)." + " For more info on using action masks, see the docs at: " + "https://pytorch.org/rl/reference/envs.html#environments-with-masked-actions" +) def _convert_exploration_type(*, exploration_mode, exploration_type): @@ -419,8 +428,9 @@ def check_env_specs(env, return_contiguous=True, check_dtype=True, seed=0): of an experiment and as such should be kept out of training scripts. """ - torch.manual_seed(seed) - env.set_seed(seed) + if seed is not None: + torch.manual_seed(seed) + env.set_seed(seed) fake_tensordict = env.fake_tensordict() real_tensordict = env.rollout(3, return_contiguous=return_contiguous) From 549e04105e21c698feba2e133b26a43767ae4d6a Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 15 Sep 2023 11:23:45 +0100 Subject: [PATCH 081/148] [CI] Fix CI (#1529) --- .../linux_libs/scripts_d4rl/setup_env.sh | 4 +- .../linux_libs/scripts_gym/setup_env.sh | 2 +- .../linux_libs/scripts_robohive/setup_env.sh | 2 +- .../scripts_gym_0_13/setup_env.sh | 2 +- docs/source/reference/envs.rst | 6 +- test/test_loggers.py | 98 +++++++++---------- torchrl/envs/libs/gym.py | 7 +- torchrl/envs/libs/habitat.py | 4 +- torchrl/envs/libs/isaacgym.py | 9 +- torchrl/envs/libs/pettingzoo.py | 13 ++- torchrl/envs/utils.py | 13 --- 11 files changed, 78 insertions(+), 82 deletions(-) diff --git a/.github/unittest/linux_libs/scripts_d4rl/setup_env.sh b/.github/unittest/linux_libs/scripts_d4rl/setup_env.sh index 97294a6a025..c1985c239ee 100755 --- a/.github/unittest/linux_libs/scripts_d4rl/setup_env.sh +++ b/.github/unittest/linux_libs/scripts_d4rl/setup_env.sh @@ -54,9 +54,9 @@ cd $root_dir/.mujoco/ #wget https://github.com/deepmind/mujoco/releases/download/2.1.1/mujoco-2.1.1-linux-x86_64.tar.gz #tar -xf mujoco-2.1.1-linux-x86_64.tar.gz #wget https://mujoco.org/download/mujoco210-linux-x86_64.tar.gz -wget https://www.roboti.us/download/mujoco200_linux.zip +wget https://pytorch.s3.amazonaws.com/torchrl/github-artifacts/mujoco200_linux.zip unzip mujoco200_linux.zip -wget https://www.roboti.us/file/mjkey.txt +wget https://pytorch.s3.amazonaws.com/torchrl/github-artifacts/mjkey.txt cp mjkey.txt ./mujoco200_linux/bin/ # install mujoco-py locally git clone https://github.com/vmoens/mujoco-py.git diff --git a/.github/unittest/linux_libs/scripts_gym/setup_env.sh b/.github/unittest/linux_libs/scripts_gym/setup_env.sh index ac6da363945..8804370aa6d 100755 --- a/.github/unittest/linux_libs/scripts_gym/setup_env.sh +++ b/.github/unittest/linux_libs/scripts_gym/setup_env.sh @@ -57,7 +57,7 @@ mkdir -p mujoco_py/binaries/linux \ && wget https://mujoco.org/download/mujoco210-linux-x86_64.tar.gz -O mujoco.tar.gz \ && tar -xf mujoco.tar.gz -C mujoco_py/binaries/linux \ && rm mujoco.tar.gz -wget https://www.roboti.us/file/mjkey.txt +wget https://pytorch.s3.amazonaws.com/torchrl/github-artifacts/mjkey.txt cp mjkey.txt mujoco_py/binaries/ pip install -e . cd .. diff --git a/.github/unittest/linux_libs/scripts_robohive/setup_env.sh b/.github/unittest/linux_libs/scripts_robohive/setup_env.sh index bca4342209c..451693f0a07 100755 --- a/.github/unittest/linux_libs/scripts_robohive/setup_env.sh +++ b/.github/unittest/linux_libs/scripts_robohive/setup_env.sh @@ -47,7 +47,7 @@ conda activate "${env_dir}" # && wget https://mujoco.org/download/mujoco210-linux-x86_64.tar.gz -O mujoco.tar.gz \ # && tar -xf mujoco.tar.gz -C mujoco_py/binaries/linux \ # && rm mujoco.tar.gz -#wget https://www.roboti.us/file/mjkey.txt +#wget https://pytorch.s3.amazonaws.com/torchrl/github-artifacts/mjkey.txt #cp mjkey.txt mujoco_py/binaries/ #pip install -e . #cd .. diff --git a/.github/unittest/linux_olddeps/scripts_gym_0_13/setup_env.sh b/.github/unittest/linux_olddeps/scripts_gym_0_13/setup_env.sh index 0b5dc97719d..9e360c4b9c4 100755 --- a/.github/unittest/linux_olddeps/scripts_gym_0_13/setup_env.sh +++ b/.github/unittest/linux_olddeps/scripts_gym_0_13/setup_env.sh @@ -57,7 +57,7 @@ mkdir -p mujoco_py/binaries/linux \ && wget https://mujoco.org/download/mujoco210-linux-x86_64.tar.gz -O mujoco.tar.gz \ && tar -xf mujoco.tar.gz -C mujoco_py/binaries/linux \ && rm mujoco.tar.gz -wget https://www.roboti.us/file/mjkey.txt +wget https://pytorch.s3.amazonaws.com/torchrl/github-artifacts/mjkey.txt cp mjkey.txt mujoco_py/binaries/ pip install -e . cd .. diff --git a/docs/source/reference/envs.rst b/docs/source/reference/envs.rst index 26b5cb00e6b..580e02c24c7 100644 --- a/docs/source/reference/envs.rst +++ b/docs/source/reference/envs.rst @@ -213,7 +213,6 @@ etc.), but one can not use an arbitrary TorchRL environment, as it is possible w SerialEnv ParallelEnv - MultiThreadedEnv EnvCreator Multi-agent environments @@ -675,6 +674,8 @@ the following function will return ``1`` when queried: brax.BraxWrapper dm_control.DMControlEnv dm_control.DMControlWrapper + envpool.MultiThreadedEnv + envpool.MultiThreadedEnvWrapper gym.GymEnv gym.GymWrapper gym.MOGymEnv @@ -682,11 +683,14 @@ the following function will return ``1`` when queried: gym.set_gym_backend gym.gym_backend habitat.HabitatEnv + isaacgym.IsaacGymWrapper + isaacgym.IsaacGymEnv jumanji.JumanjiEnv jumanji.JumanjiWrapper openml.OpenMLEnv pettingzoo.PettingZooEnv pettingzoo.PettingZooWrapper + robohive.RoboHiveEnv smacv2.SMACv2Env smacv2.SMACv2Wrapper vmas.VmasEnv diff --git a/test/test_loggers.py b/test/test_loggers.py index a4937dd0fc3..70ed8628bfd 100644 --- a/test/test_loggers.py +++ b/test/test_loggers.py @@ -110,67 +110,63 @@ def test_log_histogram(self, tb_logger): class TestCSVLogger: @pytest.mark.parametrize("steps", [None, [1, 10, 11]]) - def test_log_scalar(self, steps): + def test_log_scalar(self, steps, tmpdir): torch.manual_seed(0) - with tempfile.TemporaryDirectory() as log_dir: - exp_name = "ramala" - logger = CSVLogger(log_dir=log_dir, exp_name=exp_name) + exp_name = "ramala" + logger = CSVLogger(log_dir=tmpdir, exp_name=exp_name) - values = torch.rand(3) - for i in range(3): - scalar_name = "foo" - scalar_value = values[i].item() - logger.log_scalar( - value=scalar_value, - name=scalar_name, - step=steps[i] if steps else None, - ) + values = torch.rand(3) + for i in range(3): + scalar_name = "foo" + scalar_value = values[i].item() + logger.log_scalar( + value=scalar_value, + name=scalar_name, + step=steps[i] if steps else None, + ) - with open( - os.path.join(log_dir, exp_name, "scalars", "foo.csv"), "r" - ) as file: - for i, row in enumerate(file.readlines()): - step = steps[i] if steps else i - assert row == f"{step},{values[i].item()}\n" + with open(os.path.join(tmpdir, exp_name, "scalars", "foo.csv"), "r") as file: + for i, row in enumerate(file.readlines()): + step = steps[i] if steps else i + assert row == f"{step},{values[i].item()}\n" @pytest.mark.parametrize("steps", [None, [1, 10, 11]]) - def test_log_video(self, steps): + def test_log_video(self, steps, tmpdir): torch.manual_seed(0) - with tempfile.TemporaryDirectory() as log_dir: - exp_name = "ramala" - logger = CSVLogger(log_dir=log_dir, exp_name=exp_name) + exp_name = "ramala" + logger = CSVLogger(log_dir=tmpdir, exp_name=exp_name) - # creating a sample video (T, C, H, W), where T - number of frames, - # C - number of image channels (e.g. 3 for RGB), H, W - image dimensions. - # the first 64 frames are black and the next 64 are white - video = torch.cat( - (torch.zeros(64, 1, 32, 32), torch.full((64, 1, 32, 32), 255)) + # creating a sample video (T, C, H, W), where T - number of frames, + # C - number of image channels (e.g. 3 for RGB), H, W - image dimensions. + # the first 64 frames are black and the next 64 are white + video = torch.cat( + (torch.zeros(64, 1, 32, 32), torch.full((64, 1, 32, 32), 255)) + ) + video = video[None, :] + for i in range(3): + logger.log_video( + name="foo", + video=video, + step=steps[i] if steps else None, ) - video = video[None, :] - for i in range(3): - logger.log_video( - name="foo", - video=video, - step=steps[i] if steps else None, - ) - sleep(0.01) # wait until events are registered + sleep(0.01) # wait until events are registered - # check that the logged videos are the same as the initial video - video_file_name = "foo_" + ("0" if not steps else str(steps[0])) + ".pt" - logged_video = torch.load( - os.path.join(log_dir, exp_name, "videos", video_file_name) + # check that the logged videos are the same as the initial video + video_file_name = "foo_" + ("0" if not steps else str(steps[0])) + ".pt" + logged_video = torch.load( + os.path.join(tmpdir, exp_name, "videos", video_file_name) + ) + assert torch.equal(video, logged_video), logged_video + + # check that we catch the error in case the format of the tensor is wrong + video_wrong_format = torch.zeros(64, 2, 32, 32) + video_wrong_format = video_wrong_format[None, :] + with pytest.raises(Exception): + logger.log_video( + name="foo", + video=video_wrong_format, + step=steps[i] if steps else None, ) - assert torch.equal(video, logged_video), logged_video - - # check that we catch the error in case the format of the tensor is wrong - video_wrong_format = torch.zeros(64, 2, 32, 32) - video_wrong_format = video_wrong_format[None, :] - with pytest.raises(Exception): - logger.log_video( - name="foo", - video=video_wrong_format, - step=steps[i] if steps else None, - ) def test_log_histogram(self): torch.manual_seed(0) diff --git a/torchrl/envs/libs/gym.py b/torchrl/envs/libs/gym.py index 8e58c0915a6..86b7f0d63bf 100644 --- a/torchrl/envs/libs/gym.py +++ b/torchrl/envs/libs/gym.py @@ -11,6 +11,8 @@ import torch +from torchrl.envs.utils import _classproperty + try: from torch.utils._contextlib import _DecoratorContextManager except ModuleNotFoundError: @@ -31,7 +33,6 @@ from torchrl.data.utils import numpy_to_torch_dtype_dict from torchrl.envs.gym_like import default_info_dict_reader, GymLikeEnv -from torchrl.envs.utils import _classproperty DEFAULT_GYM = None IMPORT_ERROR = None @@ -489,8 +490,8 @@ def _build_gym_env(self, env, pixels_only): # noqa: F811 return LegacyPixelObservationWrapper(env, pixels_only=pixels_only) @_classproperty - def available_envs(cls) -> List[str]: - return _get_envs() + def available_envs(cls): + yield from _get_envs() @property def lib(self) -> ModuleType: diff --git a/torchrl/envs/libs/habitat.py b/torchrl/envs/libs/habitat.py index 6074ca42207..c75793f81f9 100644 --- a/torchrl/envs/libs/habitat.py +++ b/torchrl/envs/libs/habitat.py @@ -9,7 +9,7 @@ from torchrl.data import DEVICE_TYPING from torchrl.envs import EnvBase from torchrl.envs.libs.gym import GymEnv, set_gym_backend -from torchrl.envs.utils import classproperty +from torchrl.envs.utils import _classproperty IMPORT_ERR = None try: @@ -61,7 +61,7 @@ def __init__(self, env_name, **kwargs): ] super().__init__(env_name=env_name, **kwargs) - @classproperty + @_classproperty def available_envs(cls): yield from _get_available_envs() diff --git a/torchrl/envs/libs/isaacgym.py b/torchrl/envs/libs/isaacgym.py index fa613561681..f4d17ec5d70 100644 --- a/torchrl/envs/libs/isaacgym.py +++ b/torchrl/envs/libs/isaacgym.py @@ -6,7 +6,7 @@ import itertools import warnings -from typing import Any, Dict, List, Union +from typing import Any, Dict, Union import numpy as np import torch @@ -14,6 +14,7 @@ from tensordict import TensorDictBase from torchrl.envs import make_composite_from_td from torchrl.envs.libs.gym import GymWrapper +from torchrl.envs.utils import _classproperty _has_isaac = importlib.util.find_spec("isaacgym") is not None @@ -154,11 +155,11 @@ class IsaacGymEnv(IsaacGymWrapper): """ - @property - def available_envs(cls) -> List[str]: + @_classproperty + def available_envs(cls): import isaacgymenvs # noqa - return list(isaacgymenvs.tasks.isaacgym_task_map.keys()) + yield from isaacgymenvs.tasks.isaacgym_task_map.keys() def __init__(self, task=None, *, env=None, num_envs, device, **kwargs): if env is not None and task is not None: diff --git a/torchrl/envs/libs/pettingzoo.py b/torchrl/envs/libs/pettingzoo.py index 4b260b79cf6..ce43f7641f1 100644 --- a/torchrl/envs/libs/pettingzoo.py +++ b/torchrl/envs/libs/pettingzoo.py @@ -18,8 +18,12 @@ ) from torchrl.envs.common import _EnvWrapper from torchrl.envs.libs.gym import _gym_to_torchrl_spec_transform, set_gym_backend -from torchrl.envs.utils import _replace_last, check_marl_grouping, MarlGroupMapType - +from torchrl.envs.utils import ( + _classproperty, + _replace_last, + check_marl_grouping, + MarlGroupMapType, +) _has_pettingzoo = importlib.util.find_spec("pettingzoo") is not None @@ -138,7 +142,10 @@ class PettingZooWrapper(_EnvWrapper): git_url = "https://github.com/Farama-Foundation/PettingZoo" libname = "pettingzoo" - available_envs = _get_envs() + + @_classproperty + def available_envs(cls): + yield from _get_envs() def __init__( self, diff --git a/torchrl/envs/utils.py b/torchrl/envs/utils.py index 7f6d3341867..ff50f9d7c4f 100644 --- a/torchrl/envs/utils.py +++ b/torchrl/envs/utils.py @@ -527,19 +527,6 @@ def _selective_unsqueeze(tensor: torch.Tensor, batch_size: torch.Size, dim: int return tensor -class classproperty: - """A class-property object. - - Usage: Allows for iterators coded as properties. - """ - - def __init__(self, fget): - self.fget = fget - - def __get__(self, owner_self, owner_cls): - return self.fget(owner_cls) - - def _sort_keys(element): if isinstance(element, tuple): element = unravel_key(element) From aadf2e3a8ed2ea71756db559152e153b81bbf355 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Fri, 15 Sep 2023 13:31:21 +0100 Subject: [PATCH 082/148] [BugFix] Small patches to SMAC (#1533) Signed-off-by: Matteo Bettini --- torchrl/envs/libs/smacv2.py | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/torchrl/envs/libs/smacv2.py b/torchrl/envs/libs/smacv2.py index 0c0bda35d28..6337a507e7e 100644 --- a/torchrl/envs/libs/smacv2.py +++ b/torchrl/envs/libs/smacv2.py @@ -259,8 +259,8 @@ def _make_action_spec(self) -> CompositeSpec: def _make_observation_spec(self) -> CompositeSpec: obs_spec = BoundedTensorSpec( - minimum=-1.0, - maximum=1.0, + low=-1.0, + high=1.0, shape=torch.Size([self.n_agents, self.get_obs_size()]), device=self.device, dtype=torch.float32, @@ -274,15 +274,15 @@ def _make_observation_spec(self) -> CompositeSpec: 2, dtype=torch.bool, device=self.device ), "dead_allies": BoundedTensorSpec( - minimum=0, - maximum=self.n_agents, + low=0, + high=self.n_agents, dtype=torch.long, device=self.device, shape=(), ), "dead_enemies": BoundedTensorSpec( - minimum=0, - maximum=self.n_enemies, + low=0, + high=self.n_enemies, dtype=torch.long, device=self.device, shape=(), @@ -302,8 +302,8 @@ def _make_observation_spec(self) -> CompositeSpec: shape=torch.Size((self.n_agents,)), ), "state": BoundedTensorSpec( - minimum=-1.0, - maximum=1.0, + low=-1.0, + high=1.0, shape=torch.Size((self.get_state_size(),)), device=self.device, dtype=torch.float32, @@ -449,6 +449,15 @@ def get_agent_type(self, agent_index: int) -> str: else: raise AssertionError(f"Agent type {agent_info.unit_type} unidentified") + # This patches the bug in https://github.com/oxwhirl/smacv2/issues/33 + def render(self, mode: str = "human"): + import smacv2 + + if isinstance(self._env, smacv2.env.StarCraftCapabilityEnvWrapper): + return self._env.env.render(mode=mode) + else: + return self._env.render(mode=mode) + class SMACv2Env(SMACv2Wrapper): """SMACv2 (StarCraft Multi-Agent Challenge v2) environment wrapper. From a3bf509f42ea9da0851c16776e6d887e98bf482a Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 15 Sep 2023 15:06:56 +0100 Subject: [PATCH 083/148] [Refactor] Expose all wrappers in torchrl.envs (#1532) --- docs/source/reference/envs.rst | 52 ++++++------ test/test_libs.py | 12 ++- torchrl/collectors/collectors.py | 5 +- torchrl/collectors/distributed/generic.py | 3 +- torchrl/collectors/distributed/ray.py | 3 +- torchrl/collectors/distributed/rpc.py | 3 +- torchrl/collectors/distributed/sync.py | 3 +- torchrl/data/tensor_specs.py | 2 +- torchrl/envs/__init__.py | 24 +++++- torchrl/envs/libs/__init__.py | 13 +++ torchrl/envs/libs/brax.py | 97 ++++++++++++++--------- torchrl/envs/libs/dm_control.py | 67 ++++++++++------ torchrl/envs/libs/envpool.py | 7 ++ torchrl/envs/libs/gym.py | 6 +- torchrl/envs/libs/habitat.py | 22 +++-- torchrl/envs/libs/isaacgym.py | 12 ++- torchrl/envs/libs/jax_utils.py | 27 +++++-- torchrl/envs/libs/jumanji.py | 87 +++++++++++++------- torchrl/envs/libs/openml.py | 3 +- torchrl/envs/libs/pettingzoo.py | 6 +- torchrl/envs/libs/robohive.py | 46 +++++------ torchrl/envs/libs/smacv2.py | 12 ++- torchrl/envs/libs/vmas.py | 55 +++++++------ torchrl/envs/model_based/dreamer.py | 2 +- torchrl/modules/planners/cem.py | 2 +- torchrl/modules/planners/common.py | 2 +- torchrl/modules/planners/mppi.py | 2 +- torchrl/modules/tensordict_module/rnn.py | 2 +- torchrl/record/__init__.py | 1 + torchrl/record/loggers/__init__.py | 8 +- torchrl/record/loggers/mlflow.py | 44 +++++----- torchrl/record/loggers/tensorboard.py | 14 ++-- torchrl/record/loggers/wandb.py | 34 ++++---- torchrl/trainers/helpers/collectors.py | 4 +- torchrl/trainers/helpers/models.py | 2 +- 35 files changed, 419 insertions(+), 265 deletions(-) diff --git a/docs/source/reference/envs.rst b/docs/source/reference/envs.rst index 580e02c24c7..212a566aac3 100644 --- a/docs/source/reference/envs.rst +++ b/docs/source/reference/envs.rst @@ -594,7 +594,7 @@ Domain-specific Libraries --------- -.. currentmodule:: torchrl.envs.libs +.. currentmodule:: torchrl.envs TorchRL's mission is to make the training of control and decision algorithm as easy as it gets, irrespective of the simulator being used (if any). @@ -670,28 +670,28 @@ the following function will return ``1`` when queried: :toctree: generated/ :template: rl_template_fun.rst - brax.BraxEnv - brax.BraxWrapper - dm_control.DMControlEnv - dm_control.DMControlWrapper - envpool.MultiThreadedEnv - envpool.MultiThreadedEnvWrapper - gym.GymEnv - gym.GymWrapper - gym.MOGymEnv - gym.MOGymWrapper - gym.set_gym_backend - gym.gym_backend - habitat.HabitatEnv - isaacgym.IsaacGymWrapper - isaacgym.IsaacGymEnv - jumanji.JumanjiEnv - jumanji.JumanjiWrapper - openml.OpenMLEnv - pettingzoo.PettingZooEnv - pettingzoo.PettingZooWrapper - robohive.RoboHiveEnv - smacv2.SMACv2Env - smacv2.SMACv2Wrapper - vmas.VmasEnv - vmas.VmasWrapper + BraxEnv + BraxWrapper + DMControlEnv + DMControlWrapper + GymEnv + GymWrapper + HabitatEnv + IsaacGymEnv + IsaacGymWrapper + JumanjiEnv + JumanjiWrapper + MOGymEnv + MOGymWrapper + MultiThreadedEnv + MultiThreadedEnvWrapper + OpenMLEnv + PettingZooEnv + PettingZooWrapper + RoboHiveEnv + SMACv2Env + SMACv2Wrapper + VmasEnv + VmasWrapper + gym_backend + set_gym_backend diff --git a/test/test_libs.py b/test/test_libs.py index b17c84de455..bb8444e22b4 100644 --- a/test/test_libs.py +++ b/test/test_libs.py @@ -26,7 +26,6 @@ import pytest import torch -import torchrl from _utils_internal import ( _make_multithreaded_env, CARTPOLE_VERSIONED, @@ -660,6 +659,11 @@ def test_jumanji_consistency(self, envname, batch_size): @pytest.mark.skipif(not _has_envpool, reason="No envpool library found") class TestEnvPool: + def test_lib(self): + import envpool + + assert MultiThreadedEnvWrapper.lib is envpool + @pytest.mark.parametrize("env_name", ENVPOOL_ALL_ENVS) def test_env_wrapper_creation(self, env_name): env_name = env_name.replace("ALE/", "") # EnvPool naming convention @@ -1073,7 +1077,7 @@ def make_brax(): @pytest.mark.skipif(not _has_vmas, reason="vmas not installed") class TestVmas: - @pytest.mark.parametrize("scenario_name", torchrl.envs.libs.vmas._get_envs()) + @pytest.mark.parametrize("scenario_name", VmasWrapper.available_envs) @pytest.mark.parametrize("continuous_actions", [True, False]) def test_all_vmas_scenarios(self, scenario_name, continuous_actions): env = VmasEnv( @@ -1109,7 +1113,7 @@ def test_vmas_seeding(self, scenario_name): @pytest.mark.parametrize( "batch_size", [(), (12,), (12, 2), (12, 3), (12, 3, 1), (12, 3, 4)] ) - @pytest.mark.parametrize("scenario_name", torchrl.envs.libs.vmas._get_envs()) + @pytest.mark.parametrize("scenario_name", VmasWrapper.available_envs) def test_vmas_batch_size_error(self, scenario_name, batch_size): num_envs = 12 n_agents = 2 @@ -1220,7 +1224,7 @@ def test_vmas_spec_rollout( @pytest.mark.parametrize("num_envs", [1, 20]) @pytest.mark.parametrize("n_agents", [1, 5]) - @pytest.mark.parametrize("scenario_name", torchrl.envs.libs.vmas._get_envs()) + @pytest.mark.parametrize("scenario_name", VmasWrapper.available_envs) def test_vmas_repr(self, scenario_name, num_envs, n_agents): if n_agents == 1 and scenario_name == "balance": return diff --git a/torchrl/collectors/collectors.py b/torchrl/collectors/collectors.py index 98b03d40b32..b06a9b15252 100644 --- a/torchrl/collectors/collectors.py +++ b/torchrl/collectors/collectors.py @@ -38,7 +38,6 @@ from torchrl.collectors.utils import split_trajectories from torchrl.data.tensor_specs import CompositeSpec, TensorSpec from torchrl.data.utils import CloudpickleWrapper, DEVICE_TYPING -from torchrl.envs.batched_envs import _BatchedEnv from torchrl.envs.common import EnvBase from torchrl.envs.transforms import StepCounter, TransformedEnv from torchrl.envs.utils import ( @@ -509,6 +508,8 @@ def __init__( reset_when_done: bool = True, interruptor=None, ): + from torchrl.envs.batched_envs import _BatchedEnv + self.closed = True exploration_type = _convert_exploration_type( @@ -965,6 +966,8 @@ def state_dict(self) -> OrderedDict: `"env_state_dict"`. """ + from torchrl.envs.batched_envs import _BatchedEnv + if isinstance(self.env, TransformedEnv): env_state_dict = self.env.transform.state_dict() elif isinstance(self.env, _BatchedEnv): diff --git a/torchrl/collectors/distributed/generic.py b/torchrl/collectors/distributed/generic.py index eb0459698d5..8f37e2a8458 100644 --- a/torchrl/collectors/distributed/generic.py +++ b/torchrl/collectors/distributed/generic.py @@ -31,7 +31,8 @@ ) from torchrl.collectors.utils import split_trajectories from torchrl.data.utils import CloudpickleWrapper -from torchrl.envs import EnvBase, EnvCreator +from torchrl.envs.common import EnvBase +from torchrl.envs.env_creator import EnvCreator from torchrl.envs.utils import _convert_exploration_type SUBMITIT_ERR = None diff --git a/torchrl/collectors/distributed/ray.py b/torchrl/collectors/distributed/ray.py index 9211077c2e9..c05da8c5a0f 100644 --- a/torchrl/collectors/distributed/ray.py +++ b/torchrl/collectors/distributed/ray.py @@ -14,7 +14,8 @@ SyncDataCollector, ) from torchrl.collectors.utils import split_trajectories -from torchrl.envs import EnvBase, EnvCreator +from torchrl.envs.common import EnvBase +from torchrl.envs.env_creator import EnvCreator logger = logging.getLogger(__name__) diff --git a/torchrl/collectors/distributed/rpc.py b/torchrl/collectors/distributed/rpc.py index fc0a40c9ece..84eb963f04b 100644 --- a/torchrl/collectors/distributed/rpc.py +++ b/torchrl/collectors/distributed/rpc.py @@ -44,7 +44,8 @@ MultiSyncDataCollector, SyncDataCollector, ) -from torchrl.envs import EnvBase, EnvCreator +from torchrl.envs.common import EnvBase +from torchrl.envs.env_creator import EnvCreator def _rpc_init_collection_node( diff --git a/torchrl/collectors/distributed/sync.py b/torchrl/collectors/distributed/sync.py index d4662105444..4fe3a4aa460 100644 --- a/torchrl/collectors/distributed/sync.py +++ b/torchrl/collectors/distributed/sync.py @@ -29,7 +29,8 @@ ) from torchrl.collectors.utils import split_trajectories from torchrl.data.utils import CloudpickleWrapper -from torchrl.envs import EnvBase, EnvCreator +from torchrl.envs.common import EnvBase +from torchrl.envs.env_creator import EnvCreator from torchrl.envs.utils import _convert_exploration_type SUBMITIT_ERR = None diff --git a/torchrl/data/tensor_specs.py b/torchrl/data/tensor_specs.py index 559a34c1df1..01a88bb6fb5 100644 --- a/torchrl/data/tensor_specs.py +++ b/torchrl/data/tensor_specs.py @@ -554,7 +554,7 @@ def encode( if not ignore_device: val = torch.tensor(val, device=self.device, dtype=self.dtype) else: - val = torch.as_tensor(val, dtype=self.dtype) + val = torch.tensor(val, dtype=self.dtype) if val.shape != self.shape: # if val.shape[-len(self.shape) :] != self.shape: # option 1: add a singleton dim at the end diff --git a/torchrl/envs/__init__.py b/torchrl/envs/__init__.py index e8014bf28ab..70ea8fbf769 100644 --- a/torchrl/envs/__init__.py +++ b/torchrl/envs/__init__.py @@ -7,7 +7,29 @@ from .common import EnvBase, EnvMetaData, make_tensordict from .env_creator import EnvCreator, get_env_metadata from .gym_like import default_info_dict_reader, GymLikeEnv -from .libs.envpool import MultiThreadedEnv +from .libs import ( + BraxEnv, + BraxWrapper, + DMControlEnv, + DMControlWrapper, + GymEnv, + GymWrapper, + HabitatEnv, + IsaacGymEnv, + IsaacGymWrapper, + JumanjiEnv, + JumanjiWrapper, + MultiThreadedEnv, + MultiThreadedEnvWrapper, + OpenMLEnv, + PettingZooEnv, + PettingZooWrapper, + RoboHiveEnv, + SMACv2Env, + SMACv2Wrapper, + VmasEnv, + VmasWrapper, +) from .model_based import ModelBasedEnvBase from .transforms import ( ActionMask, diff --git a/torchrl/envs/libs/__init__.py b/torchrl/envs/libs/__init__.py index 7bec24cb17b..13dd7224626 100644 --- a/torchrl/envs/libs/__init__.py +++ b/torchrl/envs/libs/__init__.py @@ -2,3 +2,16 @@ # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. + +from .brax import BraxEnv, BraxWrapper +from .dm_control import DMControlEnv, DMControlWrapper +from .envpool import MultiThreadedEnv, MultiThreadedEnvWrapper +from .gym import GymEnv, GymWrapper +from .habitat import HabitatEnv +from .isaacgym import IsaacGymEnv, IsaacGymWrapper +from .jumanji import JumanjiEnv, JumanjiWrapper +from .openml import OpenMLEnv +from .pettingzoo import PettingZooEnv, PettingZooWrapper +from .robohive import RoboHiveEnv +from .smacv2 import SMACv2Env, SMACv2Wrapper +from .vmas import VmasEnv, VmasWrapper diff --git a/torchrl/envs/libs/brax.py b/torchrl/envs/libs/brax.py index 6d64e90de47..d5b7ea960ed 100644 --- a/torchrl/envs/libs/brax.py +++ b/torchrl/envs/libs/brax.py @@ -2,6 +2,7 @@ # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. +import importlib.util from typing import Dict, Optional, Union @@ -14,31 +15,26 @@ UnboundedContinuousTensorSpec, ) from torchrl.envs.common import _EnvWrapper - -try: - import brax - import brax.envs - import jax - from torchrl.envs.libs.jax_utils import ( - _extract_spec, - _ndarray_to_tensor, - _object_to_tensordict, - _tensor_to_ndarray, - _tensordict_to_object, - _tree_flatten, - _tree_reshape, - ) - - _has_brax = True - IMPORT_ERR = "" -except ImportError as err: - _has_brax = False - IMPORT_ERR = str(err) +from torchrl.envs.utils import _classproperty + +_has_brax = importlib.util.find_spec("brax") is not None +from torchrl.envs.libs.jax_utils import ( + _extract_spec, + _ndarray_to_tensor, + _object_to_tensordict, + _tensor_to_ndarray, + _tensordict_to_object, + _tree_flatten, + _tree_reshape, +) def _get_envs(): if not _has_brax: - return [] + raise ImportError("BRAX is not installed in your virtual environment.") + + import brax.envs + return list(brax.envs._envs.keys()) @@ -74,13 +70,39 @@ class BraxWrapper(_EnvWrapper): """ git_url = "https://github.com/google/brax" - available_envs = _get_envs() + + @_classproperty + def available_envs(cls): + if not _has_brax: + return + yield from _get_envs() + libname = "brax" - @property - def lib(self): + _lib = None + _jax = None + + @_classproperty + def lib(cls): + if cls._lib is not None: + return cls._lib + + import brax + import brax.envs + + cls._lib = brax return brax + @_classproperty + def jax(cls): + if cls._jax is not None: + return cls._jax + + import jax + + cls._jax = jax + return jax + def __init__(self, env=None, categorical_action_encoding=False, **kwargs): if env is not None: kwargs["env"] = env @@ -89,6 +111,8 @@ def __init__(self, env=None, categorical_action_encoding=False, **kwargs): super().__init__(**kwargs) def _check_kwargs(self, kwargs: Dict): + brax = self.lib + if "env" not in kwargs: raise TypeError("Could not find environment key 'env' in kwargs.") env = kwargs["env"] @@ -114,7 +138,9 @@ def _build_env( raise NotImplementedError("TODO") return env - def _make_state_spec(self, env: "brax.envs.env.Env"): + def _make_state_spec(self, env: "brax.envs.env.Env"): # noqa: F821 + jax = self.jax + key = jax.random.PRNGKey(0) state = env.reset(key) state_dict = _object_to_tensordict(state, self.device, batch_size=()) @@ -154,6 +180,8 @@ def _make_specs(self, env: "brax.envs.env.Env") -> None: # noqa: F821 self.observation_spec["state"] = state_spec.clone() def _make_state_example(self): + jax = self.jax + key = jax.random.PRNGKey(0) keys = jax.random.split(key, self.batch_size.numel()) state = self._vmap_jit_env_reset(jax.numpy.stack(keys)) @@ -161,17 +189,20 @@ def _make_state_example(self): return state def _init_env(self) -> Optional[int]: + jax = self.jax self._key = None self._vmap_jit_env_reset = jax.vmap(jax.jit(self._env.reset)) self._vmap_jit_env_step = jax.vmap(jax.jit(self._env.step)) self._state_example = self._make_state_example() def _set_seed(self, seed: int): + jax = self.jax if seed is None: raise Exception("Brax requires an integer seed.") self._key = jax.random.PRNGKey(seed) def _reset(self, tensordict: TensorDictBase = None, **kwargs) -> TensorDictBase: + jax = self.jax # generate random keys self._key, *keys = jax.random.split(self._key, 1 + self.numel()) @@ -304,13 +335,13 @@ def _build_env( self, env_name: str, **kwargs, - ) -> "brax.envs.env.Env": + ) -> "brax.envs.env.Env": # noqa: F821 if not _has_brax: - raise RuntimeError( + raise ImportError( f"brax not found, unable to create {env_name}. " f"Consider downloading and installing brax from" f" {self.git_url}" - ) from IMPORT_ERR + ) from_pixels = kwargs.pop("from_pixels", False) pixels_only = kwargs.pop("pixels_only", True) requires_grad = kwargs.pop("requires_grad", False) @@ -340,6 +371,7 @@ def __repr__(self) -> str: class _BraxEnvStep(torch.autograd.Function): @staticmethod def forward(ctx, env: BraxWrapper, state_td, action_tensor, *qp_values): + import jax # convert tensors to ndarrays state_obj = _tensordict_to_object(state_td, env._state_example) @@ -375,15 +407,6 @@ def forward(ctx, env: BraxWrapper, state_td, action_tensor, *qp_values): @staticmethod def backward(ctx, _, grad_next_obs, grad_next_reward, *grad_next_qp_values): - # build gradient tensordict with zeros in fields with no grad - # if grad_next_reward is None: - # raise RuntimeError("grad_next_reward") - # grad_next_reward = torch.zeros((*ctx.env.batch_size, 1), device=ctx.env.device) - # if grad_next_obs is None: - # raise RuntimeError("grad_next_obs") - # if any(val is None for val in grad_next_qp_values): - # raise RuntimeError("grad_next_qp_values") - pipeline_state = dict( zip(ctx.next_state.get("pipeline_state").keys(), grad_next_qp_values) ) diff --git a/torchrl/envs/libs/dm_control.py b/torchrl/envs/libs/dm_control.py index 658e7bbd5d7..8407964a452 100644 --- a/torchrl/envs/libs/dm_control.py +++ b/torchrl/envs/libs/dm_control.py @@ -5,12 +5,16 @@ from __future__ import annotations import collections + +import importlib import os from typing import Any, Dict, Optional, Tuple, Union import numpy as np import torch +from torchrl._utils import VERBOSE + from torchrl.data.tensor_specs import ( BoundedTensorSpec, CompositeSpec, @@ -19,10 +23,9 @@ UnboundedDiscreteTensorSpec, ) -from ..._utils import VERBOSE - -from ...data.utils import DEVICE_TYPING, numpy_to_torch_dtype_dict -from ..gym_like import GymLikeEnv +from torchrl.data.utils import DEVICE_TYPING, numpy_to_torch_dtype_dict +from torchrl.envs.gym_like import GymLikeEnv +from torchrl.envs.utils import _classproperty if torch.cuda.device_count() > 1: n = torch.cuda.device_count() - 1 @@ -30,20 +33,7 @@ if VERBOSE: print("EGL_DEVICE_ID: ", os.environ["EGL_DEVICE_ID"]) -try: - - import dm_control - import dm_env - from dm_control import suite - from dm_control.suite.wrappers import pixels - - _has_dmc = True - -except ImportError as err: - _has_dmc = False - IMPORT_ERR = err -else: - IMPORT_ERR = None +_has_dmc = _has_dm_control = importlib.util.find_spec("dm_control") is not None __all__ = ["DMControlEnv", "DMControlWrapper"] @@ -53,6 +43,8 @@ def _dmcontrol_to_torchrl_spec_transform( dtype: Optional[torch.dtype] = None, device: DEVICE_TYPING = None, ) -> TensorSpec: + import dm_env + if isinstance(spec, collections.OrderedDict): spec = { k: _dmcontrol_to_torchrl_spec_transform(item, device=device) @@ -90,8 +82,10 @@ def _dmcontrol_to_torchrl_spec_transform( def _get_envs(to_dict: bool = True) -> Dict[str, Any]: - if not _has_dmc: - return {} + if not _has_dm_control: + raise ImportError("Cannot find dm_control in virtual environment.") + from dm_control import suite + if not to_dict: return tuple(suite.BENCHMARKING) + tuple(suite.EXTRA) d = {} @@ -101,7 +95,7 @@ def _get_envs(to_dict: bool = True) -> Dict[str, Any]: for tup in suite.EXTRA: env_name = tup[0] d.setdefault(env_name, []).append(tup[1]) - return d + return d.items() def _robust_to_tensor(array: Union[float, np.ndarray]) -> torch.Tensor: @@ -130,7 +124,18 @@ class DMControlWrapper(GymLikeEnv): git_url = "https://github.com/deepmind/dm_control" libname = "dm_control" - available_envs = _get_envs() + + @_classproperty + def available_envs(cls): + if not _has_dm_control: + return + yield from _get_envs() + + @property + def lib(self): + import dm_control + + return dm_control def __init__(self, env=None, **kwargs): if env is not None: @@ -151,6 +156,8 @@ def _build_env( self.pixels_only = pixels_only if from_pixels: + from dm_control.suite.wrappers import pixels + self._set_egl_device(self.device) self.render_kwargs = {"camera_id": camera_id} if render_kwargs is not None: @@ -180,6 +187,9 @@ def _make_specs(self, env: "gym.Env") -> None: # noqa: F821 ) def _check_kwargs(self, kwargs: Dict): + dm_control = self.lib + from dm_control.suite.wrappers import pixels + if "env" not in kwargs: raise TypeError("Could not find environment key 'env' in kwargs.") env = kwargs["env"] @@ -207,6 +217,8 @@ def _init_env(self, seed: Optional[int] = None) -> Optional[int]: return seed def _set_seed(self, _seed: Optional[int]) -> Optional[int]: + from dm_control.suite.wrappers import pixels + if _seed is None: return None random_state = np.random.RandomState(_seed) @@ -262,7 +274,7 @@ def __init__(self, env_name, task_name, **kwargs): if not _has_dmc: raise ImportError( "dm_control python package was not found. Please install this dependency." - ) from IMPORT_ERR + ) kwargs["env_name"] = env_name kwargs["task_name"] = task_name super().__init__(**kwargs) @@ -274,6 +286,8 @@ def _build_env( _seed: Optional[int] = None, **kwargs, ): + from dm_control import suite + self.env_name = env_name self.task_name = task_name @@ -285,7 +299,7 @@ def _build_env( del kwargs["pixels_only"] if not _has_dmc: - raise RuntimeError( + raise ImportError( f"dm_control not found, unable to create {env_name}:" f" {task_name}. Consider downloading and installing " f"dm_control from {self.git_url}" @@ -314,9 +328,10 @@ def _check_kwargs(self, kwargs: Dict): env_name = kwargs["env_name"] if "task_name" in kwargs: task_name = kwargs["task_name"] + available_envs = dict(self.available_envs) if ( - env_name not in self.available_envs - or task_name not in self.available_envs[env_name] + env_name not in available_envs + or task_name not in available_envs[env_name] ): raise RuntimeError( f"{env_name} with task {task_name} is unknown in {self.libname}" diff --git a/torchrl/envs/libs/envpool.py b/torchrl/envs/libs/envpool.py index 4018ab91e44..2e57e9dc117 100644 --- a/torchrl/envs/libs/envpool.py +++ b/torchrl/envs/libs/envpool.py @@ -20,6 +20,7 @@ UnboundedContinuousTensorSpec, ) from torchrl.envs.common import _EnvWrapper +from torchrl.envs.utils import _classproperty _has_envpool = importlib.util.find_spec("envpool") is not None @@ -29,6 +30,12 @@ class MultiThreadedEnvWrapper(_EnvWrapper): _verbose: bool = False + @_classproperty + def lib(cls): + import envpool + + return envpool + def __init__( self, env: Optional["envpool.python.envpool.EnvPoolMixin"] = None, # noqa: F821 diff --git a/torchrl/envs/libs/gym.py b/torchrl/envs/libs/gym.py index 86b7f0d63bf..51fc6588217 100644 --- a/torchrl/envs/libs/gym.py +++ b/torchrl/envs/libs/gym.py @@ -282,6 +282,8 @@ def _gym_to_torchrl_spec_transform( def _get_envs(to_dict=False) -> List: + if not _has_gym: + raise ImportError("Gym(nasium) could not be found in your virtual environment.") envs = _get_gym_envs() envs = list(envs) envs = sorted(envs) @@ -373,7 +375,7 @@ def get_library_name(env): return gymnasium except ImportError: pass - raise RuntimeError( + raise ImportError( f"Could not find the library of env {env}. Please file an issue on torchrl github repo." ) @@ -491,6 +493,8 @@ def _build_gym_env(self, env, pixels_only): # noqa: F811 @_classproperty def available_envs(cls): + if not _has_gym: + return yield from _get_envs() @property diff --git a/torchrl/envs/libs/habitat.py b/torchrl/envs/libs/habitat.py index c75793f81f9..52f12140a51 100644 --- a/torchrl/envs/libs/habitat.py +++ b/torchrl/envs/libs/habitat.py @@ -3,23 +3,16 @@ # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. import functools +import importlib.util import torch -from torchrl.data import DEVICE_TYPING -from torchrl.envs import EnvBase +from torchrl.data.utils import DEVICE_TYPING +from torchrl.envs.common import EnvBase from torchrl.envs.libs.gym import GymEnv, set_gym_backend from torchrl.envs.utils import _classproperty -IMPORT_ERR = None -try: - import habitat - import habitat.gym # noqa - - _has_habitat = True -except ImportError as err: - _has_habitat = False - IMPORT_ERR = err +_has_habitat = importlib.util.find_spec("habitat") is not None def _wrap_import_error(fun): @@ -31,7 +24,7 @@ def new_fun(*args, **kwargs): "it or solving the import bugs (see attached error message). " "Refer to TorchRL's knowledge base in the documentation to " "debug habitat installation." - ) from IMPORT_ERR + ) return fun(*args, **kwargs) return new_fun @@ -55,6 +48,9 @@ class HabitatEnv(GymEnv): @_wrap_import_error @set_gym_backend("gym") def __init__(self, env_name, **kwargs): + import habitat # noqa + import habitat.gym # noqa + device_num = torch.device(kwargs.pop("device", 0)).index kwargs["override_options"] = [ f"habitat.simulator.habitat_sim_v0.gpu_device_id={device_num}", @@ -63,6 +59,8 @@ def __init__(self, env_name, **kwargs): @_classproperty def available_envs(cls): + if not _has_habitat: + return yield from _get_available_envs() def _build_gym_env(self, env, pixels_only): diff --git a/torchrl/envs/libs/isaacgym.py b/torchrl/envs/libs/isaacgym.py index f4d17ec5d70..eb9ba7084b6 100644 --- a/torchrl/envs/libs/isaacgym.py +++ b/torchrl/envs/libs/isaacgym.py @@ -12,9 +12,8 @@ import torch from tensordict import TensorDictBase -from torchrl.envs import make_composite_from_td from torchrl.envs.libs.gym import GymWrapper -from torchrl.envs.utils import _classproperty +from torchrl.envs.utils import _classproperty, make_composite_from_td _has_isaac = importlib.util.find_spec("isaacgym") is not None @@ -36,6 +35,12 @@ class IsaacGymWrapper(GymWrapper): """ + @property + def lib(self): + import isaacgym + + return isaacgym + def __init__( self, env: "isaacgymenvs.tasks.base.vec_task.Env", **kwargs # noqa: F821 ): @@ -157,6 +162,9 @@ class IsaacGymEnv(IsaacGymWrapper): @_classproperty def available_envs(cls): + if not _has_isaac: + return + import isaacgymenvs # noqa yield from isaacgymenvs.tasks.isaacgym_task_map.keys() diff --git a/torchrl/envs/libs/jax_utils.py b/torchrl/envs/libs/jax_utils.py index 5eac0a42c9e..10889a169cd 100644 --- a/torchrl/envs/libs/jax_utils.py +++ b/torchrl/envs/libs/jax_utils.py @@ -2,14 +2,15 @@ # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. - import dataclasses +import importlib.util from typing import Union -import jax +# import jax import numpy as np import torch -from jax import dlpack as jax_dlpack, numpy as jnp + +# from jax import dlpack as jax_dlpack, numpy as jnp from tensordict.tensordict import make_tensordict, TensorDictBase from torch.utils import dlpack as torch_dlpack from torchrl.data.tensor_specs import ( @@ -20,13 +21,19 @@ ) from torchrl.data.utils import numpy_to_torch_dtype_dict +_has_jax = importlib.util.find_spec("jax") is not None + def _tree_reshape(x, batch_size: torch.Size): + import jax + shape, n = batch_size, 1 return jax.tree_util.tree_map(lambda x: x.reshape(shape + x.shape[n:]), x) def _tree_flatten(x, batch_size: torch.Size): + import jax + shape, n = (batch_size.numel(),), len(batch_size) return jax.tree_util.tree_map(lambda x: x.reshape(shape + x.shape[n:]), x) @@ -38,7 +45,11 @@ def _tree_flatten(x, batch_size: torch.Size): } -def _ndarray_to_tensor(value: Union[jnp.ndarray, np.ndarray]) -> torch.Tensor: +def _ndarray_to_tensor( + value: Union["jnp.ndarray", np.ndarray] # noqa: F821 +) -> torch.Tensor: + from jax import dlpack as jax_dlpack, numpy as jnp + # JAX arrays generated by jax.vmap would have Numpy dtypes. if value.dtype in _dtype_conversion: value = value.view(_dtype_conversion[value.dtype]) @@ -53,7 +64,9 @@ def _ndarray_to_tensor(value: Union[jnp.ndarray, np.ndarray]) -> torch.Tensor: return out.to(numpy_to_torch_dtype_dict[value.dtype]) -def _tensor_to_ndarray(value: torch.Tensor) -> jnp.ndarray: +def _tensor_to_ndarray(value: torch.Tensor) -> "jnp.ndarray": # noqa: F821 + from jax import dlpack as jax_dlpack + return jax_dlpack.from_dlpack(torch_dlpack.to_dlpack(value)) @@ -75,6 +88,8 @@ def _get_object_fields(obj) -> dict: def _object_to_tensordict(obj, device, batch_size) -> TensorDictBase: """Converts a namedtuple or a dataclass to a TensorDict.""" + from jax import numpy as jnp + t = {} _fields = _get_object_fields(obj) for name, value in _fields.items(): @@ -94,6 +109,8 @@ def _object_to_tensordict(obj, device, batch_size) -> TensorDictBase: def _tensordict_to_object(tensordict: TensorDictBase, object_example): """Converts a TensorDict to a namedtuple or a dataclass.""" + from jax import dlpack as jax_dlpack + t = {} _fields = _get_object_fields(object_example) for name, example in _fields.items(): diff --git a/torchrl/envs/libs/jumanji.py b/torchrl/envs/libs/jumanji.py index 0559997212a..2e18d3f39ec 100644 --- a/torchrl/envs/libs/jumanji.py +++ b/torchrl/envs/libs/jumanji.py @@ -2,12 +2,16 @@ # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. +import importlib.util from typing import Dict, Optional, Union import numpy as np import torch from tensordict.tensordict import TensorDict, TensorDictBase +from torchrl.envs.utils import _classproperty + +_has_jumanji = importlib.util.find_spec("jumanji") is not None from torchrl.data.tensor_specs import ( BoundedTensorSpec, @@ -20,31 +24,23 @@ UnboundedDiscreteTensorSpec, ) from torchrl.data.utils import numpy_to_torch_dtype_dict -from torchrl.envs import GymLikeEnv - -try: - import jax - import jumanji - from jax import numpy as jnp - from torchrl.envs.libs.jax_utils import ( - _extract_spec, - _ndarray_to_tensor, - _object_to_tensordict, - _tensordict_to_object, - _tree_flatten, - _tree_reshape, - ) - - _has_jumanji = True - IMPORT_ERR = "" -except ImportError as err: - _has_jumanji = False - IMPORT_ERR = str(err) +from torchrl.envs.gym_like import GymLikeEnv + +from torchrl.envs.libs.jax_utils import ( + _extract_spec, + _ndarray_to_tensor, + _object_to_tensordict, + _tensordict_to_object, + _tree_flatten, + _tree_reshape, +) def _get_envs(): if not _has_jumanji: - return [] + raise ImportError("Jumanji is not installed in your virtual environment.") + import jumanji + return jumanji.registered_environments() @@ -54,6 +50,8 @@ def _jumanji_to_torchrl_spec_transform( device: DEVICE_TYPING = None, categorical_action_encoding: bool = True, ) -> TensorSpec: + import jumanji + if isinstance(spec, jumanji.specs.DiscreteArray): action_space_cls = ( DiscreteTensorSpec @@ -132,18 +130,25 @@ class JumanjiWrapper(GymLikeEnv): """ git_url = "https://github.com/instadeepai/jumanji" - available_envs = _get_envs() libname = "jumanji" + @_classproperty + def available_envs(cls): + if not _has_jumanji: + return + yield from _get_envs() + @property def lib(self): + import jumanji + return jumanji - def __init__(self, env: "jumanji.env.Environment" = None, **kwargs): + def __init__(self, env: "jumanji.env.Environment" = None, **kwargs): # noqa: F821 if not _has_jumanji: raise ImportError( "jumanji is not installed or importing it failed. Consider checking your installation." - ) from IMPORT_ERR + ) if env is not None: kwargs["env"] = env super().__init__(**kwargs) @@ -166,6 +171,9 @@ def _build_env( return env def _make_state_example(self, env): + import jax + from jax import numpy as jnp + key = jax.random.PRNGKey(0) keys = jax.random.split(key, self.batch_size.numel()) state, _ = jax.vmap(env.reset)(jnp.stack(keys)) @@ -173,6 +181,8 @@ def _make_state_example(self, env): return state def _make_state_spec(self, env) -> TensorSpec: + import jax + key = jax.random.PRNGKey(0) state, _ = env.reset(key) state_dict = _object_to_tensordict(state, self.device, batch_size=()) @@ -187,6 +197,8 @@ def _make_action_spec(self, env) -> TensorSpec: return action_spec def _make_observation_spec(self, env) -> TensorSpec: + jumanji = self.lib + spec = env.observation_spec() new_spec = _jumanji_to_torchrl_spec_transform(spec, device=self.device) if isinstance(spec, jumanji.specs.Array): @@ -222,6 +234,7 @@ def _make_specs(self, env: "jumanji.env.Environment") -> None: # noqa: F821 self._state_example = self._make_state_example(env) def _check_kwargs(self, kwargs: Dict): + jumanji = self.lib if "env" not in kwargs: raise TypeError("Could not find environment key 'env' in kwargs.") env = kwargs["env"] @@ -231,7 +244,22 @@ def _check_kwargs(self, kwargs: Dict): def _init_env(self): pass + @property + def key(self): + key = getattr(self, "_key", None) + if key is None: + raise RuntimeError( + "the env.key attribute wasn't found. Make sure to call `env.set_seed(seed)` before any interaction." + ) + return key + + @key.setter + def key(self, value): + self._key = value + def _set_seed(self, seed): + import jax + if seed is None: raise Exception("Jumanji requires an integer seed.") self.key = jax.random.PRNGKey(seed) @@ -241,6 +269,8 @@ def read_state(self, state): return self.state_spec["state"].encode(state_dict) def read_obs(self, obs): + from jax import numpy as jnp + if isinstance(obs, (list, jnp.ndarray, np.ndarray)): obs_dict = _ndarray_to_tensor(obs).to(self.device) else: @@ -248,6 +278,7 @@ def read_obs(self, obs): return super().read_obs(obs_dict) def _step(self, tensordict: TensorDictBase) -> TensorDictBase: + import jax # prepare inputs state = _tensordict_to_object(tensordict.get("state"), self._state_example) @@ -286,6 +317,8 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: def _reset( self, tensordict: Optional[TensorDictBase] = None, **kwargs ) -> TensorDictBase: + import jax + from jax import numpy as jnp # generate random keys self.key, *keys = jax.random.split(self.key, self.numel() + 1) @@ -332,13 +365,13 @@ def _build_env( self, env_name: str, **kwargs, - ) -> "jumanji.env.Environment": + ) -> "jumanji.env.Environment": # noqa: F821 if not _has_jumanji: - raise RuntimeError( + raise ImportError( f"jumanji not found, unable to create {env_name}. " f"Consider installing jumanji. More info:" f" {self.git_url}." - ) from IMPORT_ERR + ) from_pixels = kwargs.pop("from_pixels", False) pixels_only = kwargs.pop("pixels_only", True) if kwargs: diff --git a/torchrl/envs/libs/openml.py b/torchrl/envs/libs/openml.py index c7cc7f5cf16..25b5dfbad30 100644 --- a/torchrl/envs/libs/openml.py +++ b/torchrl/envs/libs/openml.py @@ -14,7 +14,8 @@ ) from torchrl.data.datasets.openml import OpenMLExperienceReplay from torchrl.data.replay_buffers import SamplerWithoutReplacement -from torchrl.envs import Compose, DoubleToFloat, EnvBase, RenameTransform +from torchrl.envs.common import EnvBase +from torchrl.envs.transforms import Compose, DoubleToFloat, RenameTransform def _make_composite_from_td(td): diff --git a/torchrl/envs/libs/pettingzoo.py b/torchrl/envs/libs/pettingzoo.py index ce43f7641f1..da10fb7074e 100644 --- a/torchrl/envs/libs/pettingzoo.py +++ b/torchrl/envs/libs/pettingzoo.py @@ -28,9 +28,9 @@ _has_pettingzoo = importlib.util.find_spec("pettingzoo") is not None -def _get_envs() -> List[str]: +def _get_envs(): if not _has_pettingzoo: - return [] + raise ImportError("PettingZoo is not installed in your virtual environment.") from pettingzoo.utils.all_modules import all_environments return list(all_environments.keys()) @@ -145,6 +145,8 @@ class PettingZooWrapper(_EnvWrapper): @_classproperty def available_envs(cls): + if not _has_pettingzoo: + return yield from _get_envs() def __init__( diff --git a/torchrl/envs/libs/robohive.py b/torchrl/envs/libs/robohive.py index 78eefa6d443..655a4eee16e 100644 --- a/torchrl/envs/libs/robohive.py +++ b/torchrl/envs/libs/robohive.py @@ -15,23 +15,13 @@ from tensordict.tensordict import make_tensordict from torchrl._utils import implement_for from torchrl.data import UnboundedContinuousTensorSpec -from torchrl.envs.libs.gym import ( - _gym_to_torchrl_spec_transform, - GymEnv, - set_gym_backend, -) -from torchrl.envs.utils import make_composite_from_td +from torchrl.envs.libs.gym import _gym_to_torchrl_spec_transform, GymEnv +from torchrl.envs.utils import _classproperty, make_composite_from_td _has_robohive = importlib.util.find_spec("robohive") is not None if _has_robohive: os.environ.setdefault("sim_backend", "MUJOCO") - import gym - - with set_gym_backend("gym"): - existing_envs = set(GymEnv.available_envs) - import robohive.envs.multi_task.substeps1 - from robohive.envs.env_variants import register_env_variant class set_directory(object): @@ -77,24 +67,28 @@ class RoboHiveEnv(GymEnv): """ env_list = [] - if _has_robohive: - CURR_DIR = robohive.envs.multi_task.substeps1.CURR_DIR - else: - CURR_DIR = None + + @_classproperty + def CURR_DIR(cls): + if _has_robohive: + import robohive.envs.multi_task.substeps1 + + return robohive.envs.multi_task.substeps1.CURR_DIR + else: + return None @classmethod def register_envs(cls): if not _has_robohive: - raise ImportError("Cannot load robohive.") + raise ImportError( + "Cannot load robohive from the current virtual environment." + ) from robohive import robohive_env_suite as robohive_envs from robohive.utils.prompt_utils import Prompt, set_prompt_verbosity set_prompt_verbosity(Prompt.WARN) - # with set_gym_backend("gym"): - # robo_envs = set(GymEnv.available_envs) - existing_envs cls.env_list += robohive_envs - # cls.env_list = sorted(cls.env_list) if not len(robohive_envs): raise RuntimeError("did not load any environment.") @@ -115,7 +109,7 @@ def _build_env( # noqa: F811 from_pixels: bool = False, pixels_only: bool = False, **kwargs, - ) -> "gym.core.Env": + ) -> "gym.core.Env": # noqa: F821 if from_pixels: if "cameras" not in kwargs: warnings.warn( @@ -139,8 +133,8 @@ def _build_env( # noqa: F811 render_device = 0 if not _has_robohive: - raise RuntimeError( - f"gym not found, unable to create {env_name}. " + raise ImportError( + f"gym/robohive not found, unable to create {env_name}. " f"Consider downloading and installing dm_control from" f" {self.git_url}" ) @@ -176,6 +170,8 @@ def _build_env( # noqa: F811 @classmethod def register_visual_env(cls, env_name, cams): with set_directory(cls.CURR_DIR): + from robohive.envs.env_variants import register_env_variant + if not len(cams): raise RuntimeError("Cannot create a visual envs without cameras.") cams = sorted(cams) @@ -194,7 +190,7 @@ def register_visual_env(cls, env_name, cams): cls.env_list += [env_name] return env_name - def _make_specs(self, env: "gym.Env") -> None: + def _make_specs(self, env: "gym.Env") -> None: # noqa: F821 # if self.from_pixels: # num_cams = len(env.visual_keys) # n_pix = 224 * 224 * 3 * num_cams @@ -331,6 +327,8 @@ def to(self, *args, **kwargs): @classmethod def get_available_cams(cls, env_name): + import gym + env = gym.make(env_name) cams = [env.sim.model.id2name(ic, 7) for ic in range(env.sim.model.ncam)] return cams diff --git a/torchrl/envs/libs/smacv2.py b/torchrl/envs/libs/smacv2.py index 6337a507e7e..dd9cdfeb7c7 100644 --- a/torchrl/envs/libs/smacv2.py +++ b/torchrl/envs/libs/smacv2.py @@ -19,15 +19,14 @@ ) from torchrl.envs.common import _EnvWrapper -from torchrl.envs.utils import ACTION_MASK_ERROR - +from torchrl.envs.utils import _classproperty, ACTION_MASK_ERROR _has_smacv2 = importlib.util.find_spec("smacv2") is not None def _get_envs(): if not _has_smacv2: - return [] + raise ImportError("SMAC-v2 is not installed in your virtual environment.") from smacv2.env.starcraft2.maps import smac_maps return list(smac_maps.get_smac_map_registry().keys()) @@ -174,7 +173,12 @@ class SMACv2Wrapper(_EnvWrapper): git_url = "https://github.com/oxwhirl/smacv2" libname = "smacv2" - available_envs = _get_envs() + + @_classproperty + def available_envs(cls): + if not _has_smacv2: + return + yield from _get_envs() def __init__( self, diff --git a/torchrl/envs/libs/vmas.py b/torchrl/envs/libs/vmas.py index 7ce2bc91885..6c3364a03b6 100644 --- a/torchrl/envs/libs/vmas.py +++ b/torchrl/envs/libs/vmas.py @@ -2,8 +2,9 @@ # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. +import importlib.util -from typing import Dict, List, Optional, Union +from typing import Dict, Optional, Union import torch from tensordict.tensordict import TensorDict, TensorDictBase @@ -17,24 +18,19 @@ ) from torchrl.envs.common import _EnvWrapper, EnvBase from torchrl.envs.libs.gym import _gym_to_torchrl_spec_transform, set_gym_backend -from torchrl.envs.utils import _selective_unsqueeze +from torchrl.envs.utils import _classproperty, _selective_unsqueeze -IMPORT_ERR = None -try: - import vmas - - _has_vmas = True +_has_vmas = importlib.util.find_spec("vmas") is not None -except ImportError as err: - _has_vmas = False - IMPORT_ERR = err __all__ = ["VmasWrapper", "VmasEnv"] -def _get_envs() -> List: +def _get_envs(): if not _has_vmas: - return [] + raise ImportError("VMAS is not installed in your virtual environment.") + import vmas + all_scenarios = vmas.scenarios + vmas.mpe_scenarios + vmas.debug_scenarios # TODO heterogenous spaces # For now torchrl does not support heterogenous spaces (Tple(Box)) so many OpenAI MPE scenarios do not work @@ -107,11 +103,22 @@ class VmasWrapper(_EnvWrapper): git_url = "https://github.com/proroklab/VectorizedMultiAgentSimulator" libname = "vmas" - available_envs = _get_envs() + + @property + def lib(self): + import vmas + + return vmas + + @_classproperty + def available_envs(cls): + if not _has_vmas: + return + yield from _get_envs() def __init__( self, - env: "vmas.simulator.environment.environment.Environment" = None, + env: "vmas.simulator.environment.environment.Environment" = None, # noqa categorical_actions: bool = True, **kwargs, ): @@ -123,13 +130,9 @@ def __init__( self.categorical_actions = categorical_actions super().__init__(**kwargs, allow_done_after_reset=True) - @property - def lib(self): - return vmas - def _build_env( self, - env: "vmas.simulator.environment.environment.Environment", + env: "vmas.simulator.environment.environment.Environment", # noqa from_pixels: bool = False, pixels_only: bool = False, ): @@ -159,7 +162,7 @@ def _build_env( @set_gym_backend("gym") def _make_specs( - self, env: "vmas.simulator.environment.environment.Environment" + self, env: "vmas.simulator.environment.environment.Environment" # noqa ) -> None: # TODO heterogenous spaces @@ -266,6 +269,8 @@ def _make_specs( ) def _check_kwargs(self, kwargs: Dict): + vmas = self.lib + if "env" not in kwargs: raise TypeError("Could not find environment key 'env' in kwargs.") env = kwargs["env"] @@ -477,7 +482,7 @@ class VmasEnv(VmasWrapper): def __init__( self, - scenario: Union[str, "vmas.simulator.scenario.BaseScenario"], + scenario: Union[str, "vmas.simulator.scenario.BaseScenario"], # noqa num_envs: int, continuous_actions: bool = True, max_steps: Optional[int] = None, @@ -489,7 +494,7 @@ def __init__( raise ImportError( f"vmas python package was not found. Please install this dependency. " f"More info: {self.git_url}." - ) from IMPORT_ERR + ) kwargs["scenario"] = scenario kwargs["num_envs"] = num_envs kwargs["continuous_actions"] = continuous_actions @@ -506,13 +511,15 @@ def _check_kwargs(self, kwargs: Dict): def _build_env( self, - scenario: Union[str, "vmas.simulator.scenario.BaseScenario"], + scenario: Union[str, "vmas.simulator.scenario.BaseScenario"], # noqa num_envs: int, continuous_actions: bool, max_steps: Optional[int], seed: Optional[int], **scenario_kwargs, - ) -> "vmas.simulator.environment.environment.Environment": + ) -> "vmas.simulator.environment.environment.Environment": # noqa + vmas = self.lib + self.scenario_name = scenario from_pixels = scenario_kwargs.pop("from_pixels", False) pixels_only = scenario_kwargs.pop("pixels_only", False) diff --git a/torchrl/envs/model_based/dreamer.py b/torchrl/envs/model_based/dreamer.py index bf9ac50d4c9..e36ddf9e02a 100644 --- a/torchrl/envs/model_based/dreamer.py +++ b/torchrl/envs/model_based/dreamer.py @@ -12,7 +12,7 @@ from torchrl.data.tensor_specs import CompositeSpec from torchrl.data.utils import DEVICE_TYPING -from torchrl.envs import EnvBase +from torchrl.envs.common import EnvBase from torchrl.envs.model_based import ModelBasedEnvBase diff --git a/torchrl/modules/planners/cem.py b/torchrl/modules/planners/cem.py index a56f383e929..3cf183b5e51 100644 --- a/torchrl/modules/planners/cem.py +++ b/torchrl/modules/planners/cem.py @@ -6,7 +6,7 @@ import torch from tensordict.tensordict import TensorDict, TensorDictBase -from torchrl.envs import EnvBase +from torchrl.envs.common import EnvBase from torchrl.modules.planners.common import MPCPlannerBase diff --git a/torchrl/modules/planners/common.py b/torchrl/modules/planners/common.py index 057efa1ef3a..66fd1bb9e1f 100644 --- a/torchrl/modules/planners/common.py +++ b/torchrl/modules/planners/common.py @@ -8,7 +8,7 @@ import torch from tensordict.tensordict import TensorDictBase -from torchrl.envs import EnvBase +from torchrl.envs.common import EnvBase from torchrl.modules import SafeModule diff --git a/torchrl/modules/planners/mppi.py b/torchrl/modules/planners/mppi.py index 357cfb49bea..e41f98a2852 100644 --- a/torchrl/modules/planners/mppi.py +++ b/torchrl/modules/planners/mppi.py @@ -7,7 +7,7 @@ from tensordict.tensordict import TensorDict, TensorDictBase from torch import nn -from torchrl.envs import EnvBase +from torchrl.envs.common import EnvBase from torchrl.modules.planners.common import MPCPlannerBase diff --git a/torchrl/modules/tensordict_module/rnn.py b/torchrl/modules/tensordict_module/rnn.py index 6baa4ad267d..18a6280f39f 100644 --- a/torchrl/modules/tensordict_module/rnn.py +++ b/torchrl/modules/tensordict_module/rnn.py @@ -208,7 +208,7 @@ def __init__( self._temporal_mode = False def make_tensordict_primer(self): - from torchrl.envs import TensorDictPrimer + from torchrl.envs.transforms.transforms import TensorDictPrimer def make_tuple(key): if isinstance(key, tuple): diff --git a/torchrl/record/__init__.py b/torchrl/record/__init__.py index be720e7687c..726d29ea051 100644 --- a/torchrl/record/__init__.py +++ b/torchrl/record/__init__.py @@ -3,4 +3,5 @@ # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. +from .loggers import CSVLogger, MLFlowLogger, TensorboardLogger, WandbLogger from .recorder import TensorDictRecorder, VideoRecorder diff --git a/torchrl/record/loggers/__init__.py b/torchrl/record/loggers/__init__.py index a14b39138e9..92714675046 100644 --- a/torchrl/record/loggers/__init__.py +++ b/torchrl/record/loggers/__init__.py @@ -5,9 +5,9 @@ from .common import Logger -# from .csv import CSVLogger -# from .mlflow import MLFlowLogger -# from .tensorboard import TensorboardLogger +from .csv import CSVLogger +from .mlflow import MLFlowLogger +from .tensorboard import TensorboardLogger from .utils import generate_exp_name, get_logger -# from .wandb import WandbLogger +from .wandb import WandbLogger diff --git a/torchrl/record/loggers/mlflow.py b/torchrl/record/loggers/mlflow.py index 5253c466799..c720fb22872 100644 --- a/torchrl/record/loggers/mlflow.py +++ b/torchrl/record/loggers/mlflow.py @@ -2,36 +2,20 @@ # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. +import importlib.util import os from tempfile import TemporaryDirectory from typing import Any, Dict, Optional, Sequence -try: - import torchvision - - _has_tv = True -except ImportError: - _has_tv = False from torch import Tensor -from .common import Logger - -MLFLOW_ERR = None -try: - import mlflow +from torchrl.record.loggers.common import Logger - _has_mlflow = True -except ImportError as err: - _has_mlflow = False - MLFLOW_ERR = err +_has_tv = importlib.util.find_spec("torchvision") is not None -try: - from omegaconf import OmegaConf - - _has_omgaconf = True -except ImportError: - _has_omgaconf = False +_has_mlflow = importlib.util.find_spec("mlflow") is not None +_has_omegaconf = importlib.util.find_spec("omegaconf") is not None class MLFlowLogger(Logger): @@ -49,6 +33,8 @@ def __init__( tags: Optional[Dict[str, Any]] = None, **kwargs, ) -> None: + import mlflow + self._mlflow_kwargs = { "name": exp_name, "artifact_location": tracking_uri, @@ -58,14 +44,16 @@ def __init__( super().__init__(exp_name=exp_name, log_dir=tracking_uri) self.video_log_counter = 0 - def _create_experiment(self) -> "mlflow.ActiveRun": + def _create_experiment(self) -> "mlflow.ActiveRun": # noqa + import mlflow + """Creates an mlflow experiment. Returns: mlflow.ActiveRun: The mlflow experiment object. """ if not _has_mlflow: - raise ImportError("MLFlow is not installed") from MLFLOW_ERR + raise ImportError("MLFlow is not installed") self.id = mlflow.create_experiment(**self._mlflow_kwargs) return mlflow.start_run(experiment_id=self.id) @@ -78,6 +66,8 @@ def log_scalar(self, name: str, value: float, step: Optional[int] = None) -> Non step (int, optional): The step at which the scalar is logged. Defaults to None. """ + import mlflow + mlflow.set_experiment(experiment_id=self.id) mlflow.log_metric(key=name, value=value, step=step) @@ -91,6 +81,9 @@ def log_video(self, name: str, video: Tensor, **kwargs) -> None: **kwargs: Other keyword arguments. By construction, log_video supports 'step' (integer indicating the step index) and 'fps' (default: 6). """ + import mlflow + import torchvision + if not _has_tv: raise ImportError( "Loggin a video with MLFlow requires torchvision to be installed." @@ -118,8 +111,11 @@ def log_hparams(self, cfg: "DictConfig") -> None: # noqa: F821 Args: cfg (DictConfig): The configuration of the experiment. """ + import mlflow + from omegaconf import OmegaConf + mlflow.set_experiment(experiment_id=self.id) - if type(cfg) is not dict and _has_omgaconf: + if type(cfg) is not dict and _has_omegaconf: cfg = OmegaConf.to_container(cfg, resolve=True) mlflow.log_params(cfg) diff --git a/torchrl/record/loggers/tensorboard.py b/torchrl/record/loggers/tensorboard.py index 557193cb038..ee2622ea365 100644 --- a/torchrl/record/loggers/tensorboard.py +++ b/torchrl/record/loggers/tensorboard.py @@ -2,6 +2,8 @@ # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. +import importlib.util + import os from typing import Sequence @@ -9,13 +11,7 @@ from .common import Logger - -try: - from torch.utils.tensorboard import SummaryWriter - - _has_tb = True -except ImportError: - _has_tb = False +_has_tb = importlib.util.find_spec("tensorboard") is not None class TensorboardLogger(Logger): @@ -34,7 +30,7 @@ def __init__(self, exp_name: str, log_dir: str = "tb_logs") -> None: self._has_imported_moviepy = False - def _create_experiment(self) -> "SummaryWriter": + def _create_experiment(self) -> "SummaryWriter": # noqa """Creates a tensorboard experiment. Args: @@ -47,6 +43,8 @@ def _create_experiment(self) -> "SummaryWriter": if not _has_tb: raise ImportError("torch.utils.tensorboard could not be imported") + from torch.utils.tensorboard import SummaryWriter + log_dir = str(os.path.join(self.log_dir, self.exp_name)) return SummaryWriter(log_dir=log_dir) diff --git a/torchrl/record/loggers/wandb.py b/torchrl/record/loggers/wandb.py index fd5ab756f92..1c7ffa89c5c 100644 --- a/torchrl/record/loggers/wandb.py +++ b/torchrl/record/loggers/wandb.py @@ -2,6 +2,7 @@ # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. +import importlib.util import os import warnings @@ -11,21 +12,8 @@ from .common import Logger - -try: - import wandb - - _has_wandb = True -except ImportError: - _has_wandb = False - - -try: - from omegaconf import OmegaConf - - _has_omgaconf = True -except ImportError: - _has_omgaconf = False +_has_wandb = importlib.util.find_spec("wandb") is not None +_has_omegaconf = importlib.util.find_spec("omegaconf") is not None class WandbLogger(Logger): @@ -92,11 +80,13 @@ def _create_experiment(self) -> "WandbLogger": Returns: WandbLogger: The wandb experiment logger. """ + if not _has_wandb: + raise ImportError("Wandb is not installed") + import wandb + if self.offline: os.environ["WANDB_MODE"] = "dryrun" - if not _has_wandb: - raise ImportError("Wandb is not installed") return wandb.init(**self._wandb_kwargs) def log_scalar(self, name: str, value: float, step: Optional[int] = None) -> None: @@ -124,6 +114,8 @@ def log_video(self, name: str, video: Tensor, **kwargs) -> None: (default is 'mp4') and 'fps' (default: 6). Other kwargs are passed as-is to the :obj:`experiment.log` method. """ + import wandb + # check for correct format of the video tensor ((N), T, C, H, W) # check that the color channel (C) is either 1 or 3 if video.dim() != 5 or video.size(dim=2) not in {1, 3}: @@ -166,12 +158,14 @@ def log_hparams(self, cfg: "DictConfig") -> None: # noqa: F821 cfg (DictConfig): The configuration of the experiment. """ - if type(cfg) is not dict and _has_omgaconf: - if not _has_omgaconf: + if type(cfg) is not dict and _has_omegaconf: + if not _has_omegaconf: raise ImportError( "OmegaConf could not be imported. " "Cannot log hydra configs without OmegaConf." ) + from omegaconf import OmegaConf + cfg = OmegaConf.to_container(cfg, resolve=True) self.experiment.config.update(cfg, allow_val_change=True) @@ -190,6 +184,8 @@ def log_histogram(self, name: str, data: Sequence, **kwargs): bins (str): One of {‘tensorflow’,’auto’, ‘fd’, …}. This determines how the bins are made. You can find other options in: https://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html """ + import wandb + num_bins = kwargs.pop("bins", None) step = kwargs.pop("step", None) extra_kwargs = {} diff --git a/torchrl/trainers/helpers/collectors.py b/torchrl/trainers/helpers/collectors.py index f14d8683d90..418dd638269 100644 --- a/torchrl/trainers/helpers/collectors.py +++ b/torchrl/trainers/helpers/collectors.py @@ -15,8 +15,8 @@ MultiSyncDataCollector, SyncDataCollector, ) -from torchrl.data import MultiStep -from torchrl.envs import ParallelEnv +from torchrl.data.postprocs import MultiStep +from torchrl.envs.batched_envs import ParallelEnv from torchrl.envs.common import EnvBase from torchrl.envs.utils import ExplorationType diff --git a/torchrl/trainers/helpers/models.py b/torchrl/trainers/helpers/models.py index 110902cf96b..3951aa88c32 100644 --- a/torchrl/trainers/helpers/models.py +++ b/torchrl/trainers/helpers/models.py @@ -17,9 +17,9 @@ UnboundedContinuousTensorSpec, ) from torchrl.data.utils import DEVICE_TYPING -from torchrl.envs import TensorDictPrimer, TransformedEnv from torchrl.envs.common import EnvBase from torchrl.envs.model_based.dreamer import DreamerEnv +from torchrl.envs.transforms import TensorDictPrimer, TransformedEnv from torchrl.envs.utils import ExplorationType, set_exploration_type from torchrl.modules import ( NoisyLinear, From 187388211f3739e085a9c61dd6ec5dd7503a3450 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 15 Sep 2023 15:08:06 +0100 Subject: [PATCH 084/148] [Test] Skip tests in python 3.11 (#1535) --- test/test_collector.py | 5 +++++ test/test_transforms.py | 6 ++++++ 2 files changed, 11 insertions(+) diff --git a/test/test_collector.py b/test/test_collector.py index 7d8979b43c0..21862cf8297 100644 --- a/test/test_collector.py +++ b/test/test_collector.py @@ -773,6 +773,11 @@ def env_fn(seed): assert_allclose_td(data10, data20) +@pytest.mark.skipif( + sys.version_info >= (3, 11), + reason="Nested spawned multiprocessed is currently failing in python 3.11. " + "See https://github.com/python/cpython/pull/108568 for info and fix.", +) @pytest.mark.skipif(not _has_gym, reason="test designed with GymEnv") @pytest.mark.parametrize("static_seed", [True, False]) def test_collector_vecnorm_envcreator(static_seed): diff --git a/test/test_transforms.py b/test/test_transforms.py index 5c736dcedf0..9357dae0633 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -6,6 +6,7 @@ import argparse import itertools +import sys from copy import copy from functools import partial @@ -7058,6 +7059,11 @@ def _run_parallelenv(parallel_env, queue_in, queue_out): queue_in.close() del parallel_env, queue_out, queue_in + @pytest.mark.skipif( + sys.version_info >= (3, 11), + reason="Nested spawned multiprocessed is currently failing in python 3.11. " + "See https://github.com/python/cpython/pull/108568 for info and fix.", + ) def test_parallelenv_vecnorm(self): if _has_gym: make_env = EnvCreator( From 4000ab4015d91ca71f4df402ee5fae51119175d6 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 15 Sep 2023 15:09:43 +0100 Subject: [PATCH 085/148] [BugFIx] Fix entropy signature in truncated normal (#1536) --- test/test_distributions.py | 193 ++++++++++-------- .../modules/distributions/truncated_normal.py | 1 - 2 files changed, 108 insertions(+), 86 deletions(-) diff --git a/test/test_distributions.py b/test/test_distributions.py index c804dcf7e53..30bb0288dd4 100644 --- a/test/test_distributions.py +++ b/test/test_distributions.py @@ -30,40 +30,46 @@ @pytest.mark.skipif(torch.__version__ < "2.0", reason="torch 2.0 is required") @pytest.mark.parametrize("device", get_default_devices()) -@pytest.mark.parametrize("div_up", [1, 2]) -@pytest.mark.parametrize("div_down", [1, 2]) -def test_delta(device, div_up, div_down): - x = torch.randn(1000000, 4, device=device, dtype=torch.double) - d = Delta(x) - assert d.log_prob(d.mode).shape == x.shape[:-1] - assert (d.log_prob(d.mode) == float("inf")).all() - - x = torch.randn(1000000, 4, device=device, dtype=torch.double) - d = TanhDelta(x, -1 / div_down, 1.0 / div_up, atol=1e-4, rtol=1e-4) - xinv = d.transforms[0].inv(d.mode) - assert d.base_dist._is_equal(xinv).all() - assert d.log_prob(d.mode).shape == x.shape[:-1] - assert (d.log_prob(d.mode) == float("inf")).all() - - x = torch.randn(1000000, 4, device=device, dtype=torch.double) - d = TanhDelta( - x, - -torch.ones_like(x) / div_down, - torch.ones_like(x) / div_up, - atol=1e-4, - rtol=1e-4, - ) - xinv = d.transforms[0].inv(d.mode) - assert d.base_dist._is_equal(xinv).all() - assert d.log_prob(d.mode).shape == x.shape[:-1] - assert (d.log_prob(d.mode) == float("inf")).all() +class TestDelta: + def test_delta_logprob(self, device): + x = torch.randn(1000000, 4, device=device, dtype=torch.double) + d = Delta(x) + assert d.log_prob(d.mode).shape == x.shape[:-1] + assert (d.log_prob(d.mode) == float("inf")).all() + + @pytest.mark.parametrize("div_up", [1, 2]) + @pytest.mark.parametrize("div_down", [1, 2]) + def test_tanhdelta_logprob(self, device, div_up, div_down): + x = torch.randn(1000000, 4, device=device, dtype=torch.double) + d = TanhDelta(x, -1 / div_down, 1.0 / div_up, atol=1e-4, rtol=1e-4) + xinv = d.transforms[0].inv(d.mode) + assert d.base_dist._is_equal(xinv).all() + assert d.log_prob(d.mode).shape == x.shape[:-1] + assert (d.log_prob(d.mode) == float("inf")).all() + + @pytest.mark.parametrize("div_up", [1, 2]) + @pytest.mark.parametrize("div_down", [1, 2]) + def test_tanhdelta_inv(self, device, div_up, div_down): + x = torch.randn(1000000, 4, device=device, dtype=torch.double) + d = TanhDelta( + x, + -torch.ones_like(x) / div_down, + torch.ones_like(x) / div_up, + atol=1e-4, + rtol=1e-4, + ) + xinv = d.transforms[0].inv(d.mode) + assert d.base_dist._is_equal(xinv).all() + assert d.log_prob(d.mode).shape == x.shape[:-1] + assert (d.log_prob(d.mode) == float("inf")).all() - x = torch.randn(1000000, 4, device=device) - d = TanhDelta(x, -torch.ones_like(x), torch.ones_like(x), atol=1e-4, rtol=1e-4) - xinv = d.transforms[0].inv(d.mode) - assert d.base_dist._is_equal(xinv).all() - assert d.log_prob(d.mode).shape == x.shape[:-1] - assert (d.log_prob(d.mode) == float("inf")).all() + def test_tanhdelta_inv_ones(self, device): + x = torch.randn(1000000, 4, device=device) + d = TanhDelta(x, -torch.ones_like(x), torch.ones_like(x), atol=1e-4, rtol=1e-4) + xinv = d.transforms[0].inv(d.mode) + assert d.base_dist._is_equal(xinv).all() + assert d.log_prob(d.mode).shape == x.shape[:-1] + assert (d.log_prob(d.mode) == float("inf")).all() def _map_all(*tensors_or_other, device): @@ -74,42 +80,43 @@ def _map_all(*tensors_or_other, device): yield t -@pytest.mark.parametrize( - "min", [-torch.ones(3), -1, 3 * torch.tensor([-1.0, -2.0, -0.5]), -0.1] -) -@pytest.mark.parametrize( - "max", [torch.ones(3), 1, 3 * torch.tensor([1.0, 2.0, 0.5]), 0.1] -) -@pytest.mark.parametrize( - "vecs", - [ - (torch.tensor([0.1, 10.0, 5.0]), torch.tensor([0.1, 10.0, 5.0])), - (torch.zeros(7, 3), torch.ones(7, 3)), - ], -) -@pytest.mark.parametrize( - "upscale", [torch.ones(3), 1, 3 * torch.tensor([1.0, 2.0, 0.5]), 3] -) -@pytest.mark.parametrize("shape", [torch.Size([]), torch.Size([3, 4])]) -@pytest.mark.parametrize("device", get_default_devices()) -def test_tanhnormal(min, max, vecs, upscale, shape, device): - min, max, vecs, upscale, shape = _map_all( - min, max, vecs, upscale, shape, device=device +class TestTanhNormal: + @pytest.mark.parametrize( + "min", [-torch.ones(3), -1, 3 * torch.tensor([-1.0, -2.0, -0.5]), -0.1] ) - torch.manual_seed(0) - d = TanhNormal( - *vecs, - upscale=upscale, - min=min, - max=max, + @pytest.mark.parametrize( + "max", [torch.ones(3), 1, 3 * torch.tensor([1.0, 2.0, 0.5]), 0.1] ) - for _ in range(100): - a = d.rsample(shape) - assert a.shape[: len(shape)] == shape - assert (a >= d.min).all() - assert (a <= d.max).all() - lp = d.log_prob(a) - assert torch.isfinite(lp).all() + @pytest.mark.parametrize( + "vecs", + [ + (torch.tensor([0.1, 10.0, 5.0]), torch.tensor([0.1, 10.0, 5.0])), + (torch.zeros(7, 3), torch.ones(7, 3)), + ], + ) + @pytest.mark.parametrize( + "upscale", [torch.ones(3), 1, 3 * torch.tensor([1.0, 2.0, 0.5]), 3] + ) + @pytest.mark.parametrize("shape", [torch.Size([]), torch.Size([3, 4])]) + @pytest.mark.parametrize("device", get_default_devices()) + def test_tanhnormal(self, min, max, vecs, upscale, shape, device): + min, max, vecs, upscale, shape = _map_all( + min, max, vecs, upscale, shape, device=device + ) + torch.manual_seed(0) + d = TanhNormal( + *vecs, + upscale=upscale, + min=min, + max=max, + ) + for _ in range(100): + a = d.rsample(shape) + assert a.shape[: len(shape)] == shape + assert (a >= d.min).all() + assert (a <= d.max).all() + lp = d.log_prob(a) + assert torch.isfinite(lp).all() @pytest.mark.parametrize( @@ -130,24 +137,40 @@ def test_tanhnormal(min, max, vecs, upscale, shape, device): ) @pytest.mark.parametrize("shape", [torch.Size([]), torch.Size([3, 4])]) @pytest.mark.parametrize("device", get_default_devices()) -def test_truncnormal(min, max, vecs, upscale, shape, device): - torch.manual_seed(0) - min, max, vecs, upscale, shape = _map_all( - min, max, vecs, upscale, shape, device=device - ) - d = TruncatedNormal( - *vecs, - upscale=upscale, - min=min, - max=max, - ) - for _ in range(100): - a = d.rsample(shape) - assert a.shape[: len(shape)] == shape - assert (a >= d.min).all() - assert (a <= d.max).all() - lp = d.log_prob(a) - assert torch.isfinite(lp).all() +class TestTruncatedNormal: + def test_truncnormal(self, min, max, vecs, upscale, shape, device): + torch.manual_seed(0) + min, max, vecs, upscale, shape = _map_all( + min, max, vecs, upscale, shape, device=device + ) + d = TruncatedNormal( + *vecs, + upscale=upscale, + min=min, + max=max, + ) + for _ in range(100): + a = d.rsample(shape) + assert a.shape[: len(shape)] == shape + assert (a >= d.min).all() + assert (a <= d.max).all() + lp = d.log_prob(a) + assert torch.isfinite(lp).all() + + def test_truncnormal_mode(self, min, max, vecs, upscale, shape, device): + torch.manual_seed(0) + min, max, vecs, upscale, shape = _map_all( + min, max, vecs, upscale, shape, device=device + ) + d = TruncatedNormal( + *vecs, + upscale=upscale, + min=min, + max=max, + ) + assert d.mode is not None + assert d.entropy() is not None + assert d.mean is not None @pytest.mark.parametrize( diff --git a/torchrl/modules/distributions/truncated_normal.py b/torchrl/modules/distributions/truncated_normal.py index 1dfde393709..59b95658ea5 100644 --- a/torchrl/modules/distributions/truncated_normal.py +++ b/torchrl/modules/distributions/truncated_normal.py @@ -87,7 +87,6 @@ def mean(self): def variance(self): return self._variance - @property def entropy(self): return self._entropy From 776ed068851285719580a7bdb4e4258c1d387e27 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 15 Sep 2023 15:48:33 +0100 Subject: [PATCH 086/148] [CI] Fix habitat CI (#1537) --- .../unittest/linux_libs/scripts_habitat/setup_env.sh | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.github/unittest/linux_libs/scripts_habitat/setup_env.sh b/.github/unittest/linux_libs/scripts_habitat/setup_env.sh index 0a907d3fe91..d287f8a5977 100755 --- a/.github/unittest/linux_libs/scripts_habitat/setup_env.sh +++ b/.github/unittest/linux_libs/scripts_habitat/setup_env.sh @@ -46,7 +46,17 @@ pip3 install "cython<3" conda install -c anaconda cython="<3.0.0" -y -# 3. Install Conda dependencies +# 3. Install git LFS +mkdir git_lfs +wget https://github.com/git-lfs/git-lfs/releases/download/v2.9.0/git-lfs-linux-amd64-v2.9.0.tar.gz --directory-prefix git_lfs +cd git_lfs +tar -xf git-lfs-linux-amd64-v2.9.0.tar.gz +chmod 755 install.sh +./install.sh +cd .. +git lfs install + +# 4. Install Conda dependencies printf "* Installing dependencies (except PyTorch)\n" echo " - python=${PYTHON_VERSION}" >> "${this_dir}/environment.yml" cat "${this_dir}/environment.yml" From 4c2a7f99eaab608ea5aeac5b81ff7cd4292ce347 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 15 Sep 2023 15:49:10 +0100 Subject: [PATCH 087/148] [Test] Test state_dict and loss modules (#1527) --- test/test_cost.py | 359 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 359 insertions(+) diff --git a/test/test_cost.py b/test/test_cost.py index 653594ad5e8..174f70772be 100644 --- a/test/test_cost.py +++ b/test/test_cost.py @@ -466,6 +466,19 @@ def test_dqn(self, delay_value, device, action_spec_type, td_est): p.data += torch.randn_like(p) assert all((p1 != p2).all() for p1, p2 in zip(parameters, actor.parameters())) + @pytest.mark.parametrize("delay_value", (False, True)) + @pytest.mark.parametrize("device", get_default_devices()) + @pytest.mark.parametrize("action_spec_type", ("one_hot", "categorical")) + def test_dqn_state_dict(self, delay_value, device, action_spec_type): + torch.manual_seed(self.seed) + actor = self._create_mock_actor( + action_spec_type=action_spec_type, device=device + ) + loss_fn = DQNLoss(actor, loss_function="l2", delay_value=delay_value) + sd = loss_fn.state_dict() + loss_fn2 = DQNLoss(actor, loss_function="l2", delay_value=delay_value) + loss_fn2.load_state_dict(sd) + @pytest.mark.parametrize("n", range(4)) @pytest.mark.parametrize("delay_value", (False, True)) @pytest.mark.parametrize("device", get_default_devices()) @@ -933,6 +946,20 @@ def test_qmixer(self, delay_value, device, action_spec_type, td_est): p.data += torch.randn_like(p) assert all((p1 != p2).all() for p1, p2 in zip(parameters, actor.parameters())) + @pytest.mark.parametrize("delay_value", (False, True)) + @pytest.mark.parametrize("device", get_default_devices()) + @pytest.mark.parametrize("action_spec_type", ("one_hot", "categorical")) + def test_qmixer_state_dict(self, delay_value, device, action_spec_type): + torch.manual_seed(self.seed) + actor = self._create_mock_actor( + action_spec_type=action_spec_type, device=device + ) + mixer = self._create_mock_mixer(device=device) + loss_fn = QMixerLoss(actor, mixer, loss_function="l2", delay_value=delay_value) + sd = loss_fn.state_dict() + loss_fn2 = QMixerLoss(actor, mixer, loss_function="l2", delay_value=delay_value) + loss_fn2.load_state_dict(sd) + @pytest.mark.parametrize("n", range(4)) @pytest.mark.parametrize("delay_value", (False, True)) @pytest.mark.parametrize("device", get_default_devices()) @@ -1425,6 +1452,29 @@ def test_ddpg(self, delay_actor, delay_value, device, td_est): p.data += torch.randn_like(p) assert all((p1 != p2).all() for p1, p2 in zip(parameters, actor.parameters())) + @pytest.mark.parametrize("device", get_default_devices()) + @pytest.mark.parametrize("delay_actor,delay_value", [(False, False), (True, True)]) + def test_ddpg_state_dict(self, delay_actor, delay_value, device): + torch.manual_seed(self.seed) + actor = self._create_mock_actor(device=device) + value = self._create_mock_value(device=device) + loss_fn = DDPGLoss( + actor, + value, + loss_function="l2", + delay_actor=delay_actor, + delay_value=delay_value, + ) + state_dict = loss_fn.state_dict() + loss_fn2 = DDPGLoss( + actor, + value, + loss_function="l2", + delay_actor=delay_actor, + delay_value=delay_value, + ) + loss_fn2.load_state_dict(state_dict) + @pytest.mark.parametrize("device", get_default_devices()) @pytest.mark.parametrize("separate_losses", [False, True]) def test_ddpg_separate_losses( @@ -1976,6 +2026,57 @@ def test_td3( p.grad is None or p.grad.norm() == 0.0 ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" + @pytest.mark.skipif(not _has_functorch, reason="functorch not installed") + @pytest.mark.parametrize("device", get_default_devices()) + @pytest.mark.parametrize( + "delay_actor, delay_qvalue", [(False, False), (True, True)] + ) + @pytest.mark.parametrize("policy_noise", [0.1]) + @pytest.mark.parametrize("noise_clip", [0.1]) + @pytest.mark.parametrize("use_action_spec", [True, False]) + def test_td3_state_dict( + self, + delay_actor, + delay_qvalue, + device, + policy_noise, + noise_clip, + use_action_spec, + ): + torch.manual_seed(self.seed) + actor = self._create_mock_actor(device=device) + value = self._create_mock_value(device=device) + if use_action_spec: + action_spec = actor.spec + bounds = None + else: + bounds = (-1, 1) + action_spec = None + loss_fn = TD3Loss( + actor, + value, + action_spec=action_spec, + bounds=bounds, + loss_function="l2", + policy_noise=policy_noise, + noise_clip=noise_clip, + delay_actor=delay_actor, + delay_qvalue=delay_qvalue, + ) + sd = loss_fn.state_dict() + loss_fn2 = TD3Loss( + actor, + value, + action_spec=action_spec, + bounds=bounds, + loss_function="l2", + policy_noise=policy_noise, + noise_clip=noise_clip, + delay_actor=delay_actor, + delay_qvalue=delay_qvalue, + ) + loss_fn2.load_state_dict(sd) + @pytest.mark.skipif(not _has_functorch, reason="functorch not installed") @pytest.mark.parametrize("device", get_default_devices()) @pytest.mark.parametrize("separate_losses", [False, True]) @@ -2641,6 +2742,59 @@ def test_sac( p.grad is None or p.grad.norm() == 0.0 ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" + @pytest.mark.parametrize("delay_value", (True, False)) + @pytest.mark.parametrize("delay_actor", (True, False)) + @pytest.mark.parametrize("delay_qvalue", (True, False)) + @pytest.mark.parametrize("num_qvalue", [2]) + @pytest.mark.parametrize("device", get_default_devices()) + def test_sac_state_dict( + self, + delay_value, + delay_actor, + delay_qvalue, + num_qvalue, + device, + version, + ): + if (delay_actor or delay_qvalue) and not delay_value: + pytest.skip("incompatible config") + + torch.manual_seed(self.seed) + + actor = self._create_mock_actor(device=device) + qvalue = self._create_mock_qvalue(device=device) + if version == 1: + value = self._create_mock_value(device=device) + else: + value = None + + kwargs = {} + if delay_actor: + kwargs["delay_actor"] = True + if delay_qvalue: + kwargs["delay_qvalue"] = True + if delay_value: + kwargs["delay_value"] = True + + loss_fn = SACLoss( + actor_network=actor, + qvalue_network=qvalue, + value_network=value, + num_qvalue_nets=num_qvalue, + loss_function="l2", + **kwargs, + ) + sd = loss_fn.state_dict() + loss_fn2 = SACLoss( + actor_network=actor, + qvalue_network=qvalue, + value_network=value, + num_qvalue_nets=num_qvalue, + loss_function="l2", + **kwargs, + ) + loss_fn2.load_state_dict(sd) + @pytest.mark.parametrize("device", get_default_devices()) @pytest.mark.parametrize("separate_losses", [False, True]) def test_sac_separate_losses( @@ -3275,6 +3429,51 @@ def test_discrete_sac( p.grad is None or p.grad.norm() == 0.0 ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" + @pytest.mark.parametrize("delay_qvalue", (True, False)) + @pytest.mark.parametrize("num_qvalue", [2]) + @pytest.mark.parametrize("device", get_default_devices()) + @pytest.mark.parametrize("target_entropy_weight", [0.5]) + @pytest.mark.parametrize("target_entropy", ["auto"]) + def test_discrete_sac_state_dict( + self, + delay_qvalue, + num_qvalue, + device, + target_entropy_weight, + target_entropy, + ): + torch.manual_seed(self.seed) + + actor = self._create_mock_actor(device=device) + qvalue = self._create_mock_qvalue(device=device) + + kwargs = {} + if delay_qvalue: + kwargs["delay_qvalue"] = True + + loss_fn = DiscreteSACLoss( + actor_network=actor, + qvalue_network=qvalue, + num_actions=actor.spec["action"].space.n, + num_qvalue_nets=num_qvalue, + target_entropy_weight=target_entropy_weight, + target_entropy=target_entropy, + loss_function="l2", + **kwargs, + ) + sd = loss_fn.state_dict() + loss_fn2 = DiscreteSACLoss( + actor_network=actor, + qvalue_network=qvalue, + num_actions=actor.spec["action"].space.n, + num_qvalue_nets=num_qvalue, + target_entropy_weight=target_entropy_weight, + target_entropy=target_entropy, + loss_function="l2", + **kwargs, + ) + loss_fn2.load_state_dict(sd) + @pytest.mark.parametrize("n", list(range(4))) @pytest.mark.parametrize("delay_qvalue", (True, False)) @pytest.mark.parametrize("num_qvalue", [2]) @@ -3831,6 +4030,32 @@ def test_redq(self, delay_qvalue, num_qvalue, device, td_est): p.grad is None or p.grad.norm() == 0.0 ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" + @pytest.mark.parametrize("delay_qvalue", (True, False)) + @pytest.mark.parametrize("num_qvalue", [2]) + @pytest.mark.parametrize("device", get_default_devices()) + def test_redq_state_dict(self, delay_qvalue, num_qvalue, device): + torch.manual_seed(self.seed) + + actor = self._create_mock_actor(device=device) + qvalue = self._create_mock_qvalue(device=device) + + loss_fn = REDQLoss( + actor_network=actor, + qvalue_network=qvalue, + num_qvalue_nets=num_qvalue, + loss_function="l2", + delay_qvalue=delay_qvalue, + ) + sd = loss_fn.state_dict() + loss_fn2 = REDQLoss( + actor_network=actor, + qvalue_network=qvalue, + num_qvalue_nets=num_qvalue, + loss_function="l2", + delay_qvalue=delay_qvalue, + ) + loss_fn2.load_state_dict(sd) + @pytest.mark.parametrize("separate_losses", [False, True]) def test_redq_separate_losses(self, separate_losses): torch.manual_seed(self.seed) @@ -4597,6 +4822,56 @@ def test_cql( p.grad is None or p.grad.norm() == 0.0 ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" + @pytest.mark.parametrize("delay_actor", (True, False)) + @pytest.mark.parametrize("delay_qvalue", (True, False)) + @pytest.mark.parametrize("max_q_backup", [True]) + @pytest.mark.parametrize("deterministic_backup", [True]) + @pytest.mark.parametrize("with_lagrange", [True]) + @pytest.mark.parametrize("device", get_available_devices()) + def test_cql_state_dict( + self, + delay_actor, + delay_qvalue, + max_q_backup, + deterministic_backup, + with_lagrange, + device, + ): + if delay_actor or delay_qvalue: + pytest.skip("incompatible config") + + torch.manual_seed(self.seed) + + actor = self._create_mock_actor(device=device) + qvalue = self._create_mock_qvalue(device=device) + + kwargs = {} + if delay_actor: + kwargs["delay_actor"] = True + if delay_qvalue: + kwargs["delay_qvalue"] = True + + loss_fn = CQLLoss( + actor_network=actor, + qvalue_network=qvalue, + loss_function="l2", + max_q_backup=max_q_backup, + deterministic_backup=deterministic_backup, + with_lagrange=with_lagrange, + **kwargs, + ) + sd = loss_fn.state_dict() + loss_fn2 = CQLLoss( + actor_network=actor, + qvalue_network=qvalue, + loss_function="l2", + max_q_backup=max_q_backup, + deterministic_backup=deterministic_backup, + with_lagrange=with_lagrange, + **kwargs, + ) + loss_fn2.load_state_dict(sd) + @pytest.mark.parametrize("n", list(range(4))) @pytest.mark.parametrize("delay_actor", (True, False)) @pytest.mark.parametrize("delay_qvalue", (True, False)) @@ -4983,6 +5258,19 @@ def test_ppo(self, loss_class, device, gradient_mode, advantage, td_est): assert counter == 2 actor.zero_grad() + @pytest.mark.parametrize("loss_class", (PPOLoss, ClipPPOLoss, KLPENPPOLoss)) + @pytest.mark.parametrize("gradient_mode", (True,)) + @pytest.mark.parametrize("device", get_default_devices()) + def test_ppo_state_dict(self, loss_class, device, gradient_mode): + torch.manual_seed(self.seed) + + actor = self._create_mock_actor(device=device) + value = self._create_mock_value(device=device) + loss_fn = loss_class(actor, value, loss_critic_type="l2") + sd = loss_fn.state_dict() + loss_fn2 = loss_class(actor, value, loss_critic_type="l2") + loss_fn2.load_state_dict(sd) + @pytest.mark.parametrize("loss_class", (PPOLoss, ClipPPOLoss, KLPENPPOLoss)) @pytest.mark.parametrize("advantage", ("gae", "td", "td_lambda", None)) @pytest.mark.parametrize("device", get_default_devices()) @@ -5630,6 +5918,17 @@ def test_a2c(self, device, gradient_mode, advantage, td_est): # test reset loss_fn.reset() + @pytest.mark.parametrize("gradient_mode", (True, False)) + @pytest.mark.parametrize("device", get_default_devices()) + def test_a2c_state_dict(self, device, gradient_mode): + torch.manual_seed(self.seed) + actor = self._create_mock_actor(device=device) + value = self._create_mock_value(device=device) + loss_fn = A2CLoss(actor, value, loss_critic_type="l2") + sd = loss_fn.state_dict() + loss_fn2 = A2CLoss(actor, value, loss_critic_type="l2") + loss_fn2.load_state_dict(sd) + @pytest.mark.parametrize("separate_losses", [False, True]) def test_a2c_separate_losses(self, separate_losses): torch.manual_seed(self.seed) @@ -6840,6 +7139,17 @@ def test_odt(self, device): for name, p in named_parameters: assert p.grad.norm() > 0.0, f"parameter {name} has a null gradient" + @pytest.mark.parametrize("device", get_available_devices()) + def test_odt_state_dict(self, device): + torch.manual_seed(self.seed) + + actor = self._create_mock_actor(device=device) + + loss_fn = OnlineDTLoss(actor) + sd = loss_fn.state_dict() + loss_fn2 = OnlineDTLoss(actor) + loss_fn2.load_state_dict(sd) + @pytest.mark.parametrize("device", get_available_devices()) def test_seq_odt(self, device): torch.manual_seed(self.seed) @@ -7057,6 +7367,17 @@ def test_dt(self, device): for name, p in named_parameters: assert p.grad.norm() > 0.0, f"parameter {name} has a null gradient" + @pytest.mark.parametrize("device", get_available_devices()) + def test_dt_state_dict(self, device): + torch.manual_seed(self.seed) + + actor = self._create_mock_actor(device=device) + + loss_fn = DTLoss(actor) + sd = loss_fn.state_dict() + loss_fn2 = DTLoss(actor) + loss_fn2.load_state_dict(sd) + @pytest.mark.parametrize("device", get_available_devices()) def test_seq_dt(self, device): torch.manual_seed(self.seed) @@ -7429,6 +7750,44 @@ def test_iql( p.grad is None or p.grad.norm() == 0.0 ), f"target parameter {name} (shape: {p.shape}) has a non-null gradient" + @pytest.mark.parametrize("num_qvalue", [2]) + @pytest.mark.parametrize("device", get_default_devices()) + @pytest.mark.parametrize("temperature", [0.0]) + @pytest.mark.parametrize("expectile", [0.1]) + def test_iql_state_dict( + self, + num_qvalue, + device, + temperature, + expectile, + ): + torch.manual_seed(self.seed) + + actor = self._create_mock_actor(device=device) + qvalue = self._create_mock_qvalue(device=device) + value = self._create_mock_value(device=device) + + loss_fn = IQLLoss( + actor_network=actor, + qvalue_network=qvalue, + value_network=value, + num_qvalue_nets=num_qvalue, + temperature=temperature, + expectile=expectile, + loss_function="l2", + ) + sd = loss_fn.state_dict() + loss_fn2 = IQLLoss( + actor_network=actor, + qvalue_network=qvalue, + value_network=value, + num_qvalue_nets=num_qvalue, + temperature=temperature, + expectile=expectile, + loss_function="l2", + ) + loss_fn2.load_state_dict(sd) + @pytest.mark.parametrize("separate_losses", [False, True]) def test_iql_separate_losses(self, separate_losses): torch.manual_seed(self.seed) From 7385cd21e6502b9d7b6a17da96d6c522d649f1bc Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 15 Sep 2023 16:02:10 +0100 Subject: [PATCH 088/148] [BugFix] Fix SMAC-v2 (#1538) --- torchrl/envs/libs/smacv2.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/torchrl/envs/libs/smacv2.py b/torchrl/envs/libs/smacv2.py index dd9cdfeb7c7..7e3b2decded 100644 --- a/torchrl/envs/libs/smacv2.py +++ b/torchrl/envs/libs/smacv2.py @@ -631,7 +631,7 @@ def _build_env( seed: Optional[int] = None, **kwargs, ) -> "smacv2.env.StarCraft2Env": # noqa: F821 - import smacv2 + import smacv2.env if capability_config is not None: env = smacv2.env.StarCraftCapabilityEnvWrapper( From 297a047e9499593f88ffa5ca2da4eeaf4504bf7a Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Fri, 15 Sep 2023 20:22:11 +0100 Subject: [PATCH 089/148] [Feature] Log hparams from python dict (#1517) --- test/test_loggers.py | 42 +++++++++++++++++++++++++++ torchrl/record/loggers/common.py | 4 +-- torchrl/record/loggers/csv.py | 10 ++++--- torchrl/record/loggers/mlflow.py | 6 ++-- torchrl/record/loggers/tensorboard.py | 19 ++++++++---- torchrl/record/loggers/wandb.py | 6 ++-- 6 files changed, 70 insertions(+), 17 deletions(-) diff --git a/test/test_loggers.py b/test/test_loggers.py index 70ed8628bfd..a19c8251b28 100644 --- a/test/test_loggers.py +++ b/test/test_loggers.py @@ -36,6 +36,19 @@ def tb_logger(tmp_path_factory): del logger +@pytest.fixture +def config(): + return { + "value": "value", + "nested": {"inner": 3, "value": "value"}, + "int": 3, + "list": [3, 4, 5], + "tuple": (2,), + "float": 3.45, + "bool": True, + } + + @pytest.mark.skipif(not _has_tb, reason="TensorBoard not installed") class TestTensorboard: @pytest.mark.parametrize("steps", [None, [1, 10, 11]]) @@ -98,6 +111,12 @@ def test_log_video(self, steps, tb_logger): step=steps[i] if steps else None, ) + def test_log_hparams(self, tb_logger, config): + del config["nested"] # not supported in tensorboard + del config["list"] # not supported in tensorboard + del config["tuple"] # not supported in tensorboard + tb_logger.log_hparams(config) + def test_log_histogram(self, tb_logger): torch.manual_seed(0) # test with torch @@ -177,6 +196,18 @@ def test_log_histogram(self): data = torch.randn(10) logger.log_histogram("hist", data, step=0, bins=2) + def test_log_config(self, tmpdir, config): + torch.manual_seed(0) + + exp_name = "ramala" + logger = CSVLogger(log_dir=tmpdir, exp_name=exp_name) + logger.log_hparams(cfg=config) + + with open(os.path.join(tmpdir, exp_name, "texts", "hparams0.txt"), "r") as file: + txt = "\n".join([f"{k}: {val}" for k, val in sorted(config.items())]) + text = "".join(file.readlines()) + assert text == txt + @pytest.fixture(scope="class") def wandb_logger(tmp_path_factory): @@ -243,6 +274,13 @@ def test_log_video(self, wandb_logger): video=video_wrong_format, ) + def test_log_hparams(self, wandb_logger, config): + wandb_logger.log_hparams(config) + for key, value in config.items(): + if isinstance(value, tuple): + value = list(value) # wandb converts tuples to lists + assert wandb_logger.experiment.config[key] == value + def test_log_histogram(self, wandb_logger): torch.manual_seed(0) # test with torch @@ -326,6 +364,10 @@ def test_log_histogram(self, mlflow_fixture): data = torch.randn(10) logger.log_histogram("hist", data, step=0, bins=2) + def test_log_hparams(self, mlflow_fixture, config): + logger, client = mlflow_fixture + logger.log_hparams(config) + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() diff --git a/torchrl/record/loggers/common.py b/torchrl/record/loggers/common.py index 0aa201b967c..b8325763166 100644 --- a/torchrl/record/loggers/common.py +++ b/torchrl/record/loggers/common.py @@ -4,7 +4,7 @@ # LICENSE file in the root directory of this source tree. import abc -from typing import Sequence +from typing import Dict, Sequence, Union from torch import Tensor @@ -33,7 +33,7 @@ def log_video(self, name: str, video: Tensor, step: int = None, **kwargs) -> Non ... @abc.abstractmethod - def log_hparams(self, cfg: "DictConfig") -> None: # noqa: F821 + def log_hparams(self, cfg: Union["DictConfig", Dict]) -> None: # noqa: F821 ... @abc.abstractmethod diff --git a/torchrl/record/loggers/csv.py b/torchrl/record/loggers/csv.py index b7157cc259a..1336433acb2 100644 --- a/torchrl/record/loggers/csv.py +++ b/torchrl/record/loggers/csv.py @@ -5,7 +5,7 @@ import os from collections import defaultdict from pathlib import Path -from typing import Optional, Sequence +from typing import Dict, Optional, Sequence, Union import torch from torch import Tensor @@ -38,6 +38,7 @@ def add_scalar(self, name: str, value: float, global_step: Optional[int] = None) self.files[filepath] = open(filepath, "a") fd = self.files[filepath] fd.write(",".join([str(global_step), str(value)]) + "\n") + fd.flush() def add_video(self, tag, vid_tensor, global_step: Optional[int] = None, **kwargs): if global_step is None: @@ -61,6 +62,7 @@ def add_text(self, tag, text, global_step: Optional[int] = None): self.files[filepath] = open(filepath, "w+") fd = self.files[filepath] fd.writelines(text) + fd.flush() def __repr__(self) -> str: return f"CSVExperiment(log_dir={self.log_dir})" @@ -122,13 +124,13 @@ def log_video(self, name: str, video: Tensor, step: int = None, **kwargs) -> Non **kwargs, ) - def log_hparams(self, cfg: "DictConfig") -> None: # noqa: F821 + def log_hparams(self, cfg: Union["DictConfig", Dict]) -> None: # noqa: F821 """Logs the hyperparameters of the experiment. Args: - cfg (DictConfig): The configuration of the experiment. + cfg (DictConfig or dict): The configuration of the experiment. """ - txt = "\n\t".join([f"{k}: {val}" for k, val in sorted(vars(cfg).items())]) + txt = "\n".join([f"{k}: {val}" for k, val in sorted(cfg.items())]) self.experiment.add_text("hparams", txt) def __repr__(self) -> str: diff --git a/torchrl/record/loggers/mlflow.py b/torchrl/record/loggers/mlflow.py index c720fb22872..34f8f4f8d3a 100644 --- a/torchrl/record/loggers/mlflow.py +++ b/torchrl/record/loggers/mlflow.py @@ -6,7 +6,7 @@ import os from tempfile import TemporaryDirectory -from typing import Any, Dict, Optional, Sequence +from typing import Any, Dict, Optional, Sequence, Union from torch import Tensor @@ -105,11 +105,11 @@ def log_video(self, name: str, video: Tensor, **kwargs) -> None: torchvision.io.write_video(filename=f.name, video_array=video, fps=fps) mlflow.log_artifact(f.name, "videos") - def log_hparams(self, cfg: "DictConfig") -> None: # noqa: F821 + def log_hparams(self, cfg: Union["DictConfig", Dict]) -> None: # noqa: F821 """Logs the hyperparameters of the experiment. Args: - cfg (DictConfig): The configuration of the experiment. + cfg (DictConfig or dict): The configuration of the experiment. """ import mlflow from omegaconf import OmegaConf diff --git a/torchrl/record/loggers/tensorboard.py b/torchrl/record/loggers/tensorboard.py index ee2622ea365..12e52a91a64 100644 --- a/torchrl/record/loggers/tensorboard.py +++ b/torchrl/record/loggers/tensorboard.py @@ -5,13 +5,14 @@ import importlib.util import os -from typing import Sequence +from typing import Dict, Sequence, Union from torch import Tensor from .common import Logger _has_tb = importlib.util.find_spec("tensorboard") is not None +_has_omgaconf = importlib.util.find_spec("omegaconf") is not None class TensorboardLogger(Logger): @@ -90,15 +91,23 @@ def log_video(self, name: str, video: Tensor, step: int = None, **kwargs) -> Non **kwargs, ) - def log_hparams(self, cfg: "DictConfig") -> None: # noqa: F821 + def log_hparams(self, cfg: Union["DictConfig", Dict]) -> None: # noqa: F821 """Logs the hyperparameters of the experiment. Args: - cfg (DictConfig): The configuration of the experiment. + cfg (DictConfig or dict): The configuration of the experiment. """ - txt = "\n\t".join([f"{k}: {val}" for k, val in sorted(vars(cfg).items())]) - self.experiment.add_text("hparams", txt) + if type(cfg) is not dict and _has_omgaconf: + if not _has_omgaconf: + raise ImportError( + "OmegaConf could not be imported. " + "Cannot log hydra configs without OmegaConf." + ) + from omegaconf import OmegaConf + + cfg = OmegaConf.to_container(cfg, resolve=True) + self.experiment.add_hparams(cfg, metric_dict={}) def __repr__(self) -> str: return f"TensorboardLogger(experiment={self.experiment.__repr__()})" diff --git a/torchrl/record/loggers/wandb.py b/torchrl/record/loggers/wandb.py index 1c7ffa89c5c..9a818753956 100644 --- a/torchrl/record/loggers/wandb.py +++ b/torchrl/record/loggers/wandb.py @@ -6,7 +6,7 @@ import os import warnings -from typing import Optional, Sequence +from typing import Dict, Optional, Sequence, Union from torch import Tensor @@ -151,11 +151,11 @@ def log_video(self, name: str, video: Tensor, **kwargs) -> None: **kwargs, ) - def log_hparams(self, cfg: "DictConfig") -> None: # noqa: F821 + def log_hparams(self, cfg: Union["DictConfig", Dict]) -> None: # noqa: F821 """Logs the hyperparameters of the experiment. Args: - cfg (DictConfig): The configuration of the experiment. + cfg (DictConfig or dict): The configuration of the experiment. """ if type(cfg) is not dict and _has_omegaconf: From 343016832aa260e1dd48f7d250ccb9b103d35eea Mon Sep 17 00:00:00 2001 From: "D.L" <5900204+xmaples@users.noreply.github.com> Date: Sat, 16 Sep 2023 12:53:50 +0800 Subject: [PATCH 090/148] [Features] Conv3dNet and PermuteTransform (#1398) Co-authored-by: vmoens --- docs/source/reference/envs.rst | 1 + docs/source/reference/modules.rst | 1 + test/mocking_classes.py | 2 +- test/test_modules.py | 109 +++++++++++- test/test_transforms.py | 137 +++++++++++++++ torchrl/envs/__init__.py | 1 + torchrl/envs/transforms/__init__.py | 1 + torchrl/envs/transforms/transforms.py | 151 ++++++++++++++++- torchrl/modules/models/__init__.py | 2 + torchrl/modules/models/models.py | 229 +++++++++++++++++++++++++- torchrl/modules/models/utils.py | 2 +- 11 files changed, 630 insertions(+), 6 deletions(-) diff --git a/docs/source/reference/envs.rst b/docs/source/reference/envs.rst index 212a566aac3..bc757763a21 100644 --- a/docs/source/reference/envs.rst +++ b/docs/source/reference/envs.rst @@ -477,6 +477,7 @@ to be able to create this other composition: NoopResetEnv ObservationNorm ObservationTransform + PermuteTransform PinMemoryTransform R3MTransform RandomCropTensorDict diff --git a/docs/source/reference/modules.rst b/docs/source/reference/modules.rst index 0281061b007..32f50244771 100644 --- a/docs/source/reference/modules.rst +++ b/docs/source/reference/modules.rst @@ -308,6 +308,7 @@ Regular modules MLP ConvNet + Conv3dNet LSTMNet SqueezeLayer Squeeze2dLayer diff --git a/test/mocking_classes.py b/test/mocking_classes.py index 485cbf9d40a..c6fb4689cd6 100644 --- a/test/mocking_classes.py +++ b/test/mocking_classes.py @@ -653,7 +653,7 @@ def __new__( cls._out_key = "pixels_orig" state_spec = CompositeSpec( { - cls._out_key: observation_spec["pixels_orig"], + cls._out_key: observation_spec["pixels_orig"].clone(), }, shape=batch_size, ) diff --git a/test/test_modules.py b/test/test_modules.py index a3860253b38..0e39ee8753d 100644 --- a/test/test_modules.py +++ b/test/test_modules.py @@ -27,7 +27,7 @@ VDNMixer, ) from torchrl.modules.distributions.utils import safeatanh, safetanh -from torchrl.modules.models import ConvNet, MLP, NoisyLazyLinear, NoisyLinear +from torchrl.modules.models import Conv3dNet, ConvNet, MLP, NoisyLazyLinear, NoisyLinear from torchrl.modules.models.decision_transformer import ( _has_transformers, DecisionTransformer, @@ -181,6 +181,113 @@ def test_convnet( assert y.shape == torch.Size([*batch, expected_features]) +class TestConv3d: + @pytest.mark.parametrize("in_features", [3, 10, None]) + @pytest.mark.parametrize( + "input_size, depth, num_cells, kernel_sizes, strides, paddings, expected_features", + [ + (10, None, None, 3, 1, 0, 32 * 4 * 4 * 4), + (10, 3, 32, 3, 1, 1, 32 * 10 * 10 * 10), + ], + ) + @pytest.mark.parametrize( + "activation_class, activation_kwargs", + [(nn.ReLU, {"inplace": True}), (nn.ReLU, {}), (nn.PReLU, {})], + ) + @pytest.mark.parametrize( + "norm_class, norm_kwargs", + [ + (None, None), + (nn.LazyBatchNorm3d, {}), + (nn.BatchNorm3d, {"num_features": 32}), + ], + ) + @pytest.mark.parametrize("bias_last_layer", [True, False]) + @pytest.mark.parametrize( + "aggregator_class, aggregator_kwargs", + [(SquashDims, None)], + ) + @pytest.mark.parametrize("squeeze_output", [False]) + @pytest.mark.parametrize("device", get_default_devices()) + @pytest.mark.parametrize("batch", [(2,), (2, 2)]) + def test_conv3dnet( + self, + batch, + in_features, + depth, + num_cells, + kernel_sizes, + strides, + paddings, + activation_class, + activation_kwargs, + norm_class, + norm_kwargs, + bias_last_layer, + aggregator_class, + aggregator_kwargs, + squeeze_output, + device, + input_size, + expected_features, + seed=0, + ): + torch.manual_seed(seed) + conv3dnet = Conv3dNet( + in_features=in_features, + depth=depth, + num_cells=num_cells, + kernel_sizes=kernel_sizes, + strides=strides, + paddings=paddings, + activation_class=activation_class, + activation_kwargs=activation_kwargs, + norm_class=norm_class, + norm_kwargs=norm_kwargs, + bias_last_layer=bias_last_layer, + aggregator_class=aggregator_class, + aggregator_kwargs=aggregator_kwargs, + squeeze_output=squeeze_output, + device=device, + ) + if in_features is None: + in_features = 5 + x = torch.randn( + *batch, in_features, input_size, input_size, input_size, device=device + ) + y = conv3dnet(x) + assert y.shape == torch.Size([*batch, expected_features]) + with pytest.raises(ValueError, match="must have at least 4 dimensions"): + conv3dnet(torch.randn(3, 16, 16)) + + def test_errors(self): + with pytest.raises( + ValueError, match="Null depth is not permitted with Conv3dNet" + ): + conv3dnet = Conv3dNet( + in_features=5, + num_cells=32, + depth=0, + ) + with pytest.raises( + ValueError, match="depth=None requires one of the input args" + ): + conv3dnet = Conv3dNet( + in_features=5, + num_cells=32, + depth=None, + ) + with pytest.raises( + ValueError, match="consider matching or specifying a constant num_cells" + ): + conv3dnet = Conv3dNet( + in_features=5, + num_cells=[32], + depth=None, + kernel_sizes=[3, 3], + ) + + @pytest.mark.parametrize( "layer_class", [ diff --git a/test/test_transforms.py b/test/test_transforms.py index 9357dae0633..4c979510793 100644 --- a/test/test_transforms.py +++ b/test/test_transforms.py @@ -26,6 +26,7 @@ ContinuousActionVecMockEnv, CountingBatchedEnv, CountingEnvCountPolicy, + DiscreteActionConvMockEnv, DiscreteActionConvMockEnvNumpy, IncrementingEnv, MockBatchedLockedEnv, @@ -70,6 +71,7 @@ NoopResetEnv, ObservationNorm, ParallelEnv, + PermuteTransform, PinMemoryTransform, R3MTransform, RandomCropTensorDict, @@ -8643,6 +8645,141 @@ def test_transform_inverse(self): ) +class TestPermuteTransform(TransformBase): + envclass = DiscreteActionConvMockEnv + + @classmethod + def _get_permute(cls): + return PermuteTransform( + (-1, -2, -3), in_keys=["pixels_orig", "pixels"], in_keys_inv=["pixels_orig"] + ) + + def test_single_trans_env_check(self): + base_env = TestPermuteTransform.envclass() + env = TransformedEnv(base_env, TestPermuteTransform._get_permute()) + check_env_specs(env) + assert env.observation_spec["pixels"] == env.observation_spec["pixels_orig"] + assert env.state_spec["pixels_orig"] == env.observation_spec["pixels_orig"] + + def test_serial_trans_env_check(self): + env = SerialEnv( + 2, + lambda: TransformedEnv( + TestPermuteTransform.envclass(), TestPermuteTransform._get_permute() + ), + ) + check_env_specs(env) + + def test_parallel_trans_env_check(self): + env = ParallelEnv( + 2, + lambda: TransformedEnv( + TestPermuteTransform.envclass(), TestPermuteTransform._get_permute() + ), + ) + check_env_specs(env) + + def test_trans_serial_env_check(self): + env = TransformedEnv( + SerialEnv(2, TestPermuteTransform.envclass), + TestPermuteTransform._get_permute(), + ) + check_env_specs(env) + + def test_trans_parallel_env_check(self): + env = TransformedEnv( + ParallelEnv(2, TestPermuteTransform.envclass), + TestPermuteTransform._get_permute(), + ) + check_env_specs(env) + + @pytest.mark.parametrize("batch", [[], [2], [2, 4]]) + def test_transform_compose(self, batch): + D, W, H, C = 8, 32, 64, 3 + trans = Compose( + PermuteTransform( + dims=(-1, -4, -2, -3), + in_keys=["pixels"], + ) + ) # DxWxHxC => CxDxHxW + td = TensorDict({"pixels": torch.randn((*batch, D, W, H, C))}, batch_size=batch) + td = trans(td) + assert td["pixels"].shape == torch.Size((*batch, C, D, H, W)) + + def test_transform_env(self): + base_env = TestPermuteTransform.envclass() + env = TransformedEnv(base_env, TestPermuteTransform._get_permute()) + check_env_specs(env) + assert env.observation_spec["pixels"] == env.observation_spec["pixels_orig"] + assert env.state_spec["pixels_orig"] == env.observation_spec["pixels_orig"] + assert env.state_spec["pixels_orig"] != base_env.state_spec["pixels_orig"] + assert env.observation_spec["pixels"] != base_env.observation_spec["pixels"] + + td = env.rollout(3) + assert td["pixels"].shape == torch.Size([3, 7, 7, 1]) + + # check error + with pytest.raises(ValueError, match="Only tailing dims with negative"): + t = PermuteTransform((-1, -10)) + + def test_transform_model(self): + batch = [2] + D, W, H, C = 8, 32, 64, 3 + trans = PermuteTransform( + dims=(-1, -4, -2, -3), + in_keys=["pixels"], + ) # DxWxHxC => CxDxHxW + td = TensorDict({"pixels": torch.randn((*batch, D, W, H, C))}, batch_size=batch) + out_channels = 4 + from tensordict.nn import TensorDictModule + + model = nn.Sequential( + trans, + TensorDictModule( + nn.Conv3d(C, out_channels, 3, padding=1), + in_keys=["pixels"], + out_keys=["pixels"], + ), + ) + td = model(td) + assert td["pixels"].shape == torch.Size((*batch, out_channels, D, H, W)) + + def test_transform_rb(self): + batch = [6] + D, W, H, C = 4, 5, 6, 3 + trans = PermuteTransform( + dims=(-1, -4, -2, -3), + in_keys=["pixels"], + ) # DxWxHxC => CxDxHxW + td = TensorDict({"pixels": torch.randn((*batch, D, W, H, C))}, batch_size=batch) + rb = TensorDictReplayBuffer(storage=LazyTensorStorage(5), transform=trans) + rb.extend(td) + sample = rb.sample(2) + assert sample["pixels"].shape == torch.Size([2, C, D, H, W]) + + @pytest.mark.parametrize("batch", [[], [2], [2, 4]]) + def test_transform_inverse(self, batch): + D, W, H, C = 8, 32, 64, 3 + trans = PermuteTransform( + dims=(-1, -4, -2, -3), + in_keys_inv=["pixels"], + ) # DxWxHxC => CxDxHxW + td = TensorDict({"pixels": torch.randn((*batch, C, D, H, W))}, batch_size=batch) + td = trans.inv(td) + assert td["pixels"].shape == torch.Size((*batch, D, W, H, C)) + + @pytest.mark.parametrize("batch", [[], [2], [2, 4]]) + def test_transform_no_env(self, batch): + D, W, H, C = 8, 32, 64, 3 + trans = PermuteTransform( + dims=(-1, -4, -2, -3), + in_keys=["pixels"], + ) # DxWxHxC => CxDxHxW + td = TensorDict({"pixels": torch.randn((*batch, D, W, H, C))}, batch_size=batch) + td = trans(td) + assert td["pixels"].shape == torch.Size((*batch, C, D, H, W)) + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/torchrl/envs/__init__.py b/torchrl/envs/__init__.py index 70ea8fbf769..e979bbabac8 100644 --- a/torchrl/envs/__init__.py +++ b/torchrl/envs/__init__.py @@ -54,6 +54,7 @@ NoopResetEnv, ObservationNorm, ObservationTransform, + PermuteTransform, PinMemoryTransform, R3MTransform, RandomCropTensorDict, diff --git a/torchrl/envs/transforms/__init__.py b/torchrl/envs/transforms/__init__.py index 2a81878e13d..357784a7ea8 100644 --- a/torchrl/envs/transforms/__init__.py +++ b/torchrl/envs/transforms/__init__.py @@ -27,6 +27,7 @@ NoopResetEnv, ObservationNorm, ObservationTransform, + PermuteTransform, PinMemoryTransform, RandomCropTensorDict, RenameTransform, diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index e37e079e63b..2300194a61a 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -150,12 +150,14 @@ class Transform(nn.Module): def __init__( self, - in_keys: Sequence[NestedKey], + in_keys: Sequence[NestedKey] = None, out_keys: Optional[Sequence[NestedKey]] = None, in_keys_inv: Optional[Sequence[NestedKey]] = None, out_keys_inv: Optional[Sequence[NestedKey]] = None, ): super().__init__() + if in_keys is None: + in_keys = [] if isinstance(in_keys, (str, tuple)): in_keys = [in_keys] if isinstance(out_keys, (str, tuple)): @@ -1806,6 +1808,153 @@ def squeeze_dim(self): _inv_apply_transform = UnsqueezeTransform._apply_transform +class PermuteTransform(Transform): + """Permutation transform. + + Permutes input tensors along the desired dimensions. The permutations + must be provided along the feature dimension (not batch dimension). + + Args: + dims (list of int): the permuted order of the dimensions. Must be a reordering + of the dims ``[-(len(dims)), ..., -1]``. + in_keys (list of NestedKeys): input entries (read). + out_keys (list of NestedKeys): input entries (write). Defaults to ``in_keys`` if + not provided. + in_keys_inv (list of NestedKeys): input entries (read) during :meth:`~.inv` calls. + out_keys_inv (list of NestedKeys): input entries (write) during :meth:`~.inv` calls. Defaults to ``in_keys_in`` if + not provided. + + Examples: + >>> from torchrl.envs.libs.gym import GymEnv + >>> base_env = GymEnv("ALE/Pong-v5") + >>> base_env.rollout(2) + TensorDict( + fields={ + action: Tensor(shape=torch.Size([2, 6]), device=cpu, dtype=torch.int64, is_shared=False), + done: Tensor(shape=torch.Size([2, 1]), device=cpu, dtype=torch.bool, is_shared=False), + next: TensorDict( + fields={ + done: Tensor(shape=torch.Size([2, 1]), device=cpu, dtype=torch.bool, is_shared=False), + pixels: Tensor(shape=torch.Size([2, 210, 160, 3]), device=cpu, dtype=torch.uint8, is_shared=False), + reward: Tensor(shape=torch.Size([2, 1]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([2]), + device=cpu, + is_shared=False), + pixels: Tensor(shape=torch.Size([2, 210, 160, 3]), device=cpu, dtype=torch.uint8, is_shared=False)}, + batch_size=torch.Size([2]), + device=cpu, + is_shared=False) + >>> env = TransformedEnv(base_env, PermuteTransform((-1, -3, -2), in_keys=["pixels"])) + >>> env.rollout(2) # channels are at the end + TensorDict( + fields={ + action: Tensor(shape=torch.Size([2, 6]), device=cpu, dtype=torch.int64, is_shared=False), + done: Tensor(shape=torch.Size([2, 1]), device=cpu, dtype=torch.bool, is_shared=False), + next: TensorDict( + fields={ + done: Tensor(shape=torch.Size([2, 1]), device=cpu, dtype=torch.bool, is_shared=False), + pixels: Tensor(shape=torch.Size([2, 3, 210, 160]), device=cpu, dtype=torch.uint8, is_shared=False), + reward: Tensor(shape=torch.Size([2, 1]), device=cpu, dtype=torch.float32, is_shared=False)}, + batch_size=torch.Size([2]), + device=cpu, + is_shared=False), + pixels: Tensor(shape=torch.Size([2, 3, 210, 160]), device=cpu, dtype=torch.uint8, is_shared=False)}, + batch_size=torch.Size([2]), + device=cpu, + is_shared=False) + + """ + + def __init__( + self, + dims, + in_keys=None, + out_keys=None, + in_keys_inv=None, + out_keys_inv=None, + ): + super().__init__( + in_keys=in_keys, + out_keys=out_keys, + in_keys_inv=in_keys_inv, + out_keys_inv=out_keys_inv, + ) + # check dims + self.dims = dims + if sorted(dims) != list(range(-len(dims), 0)): + raise ValueError( + f"Only tailing dims with negative indices are supported by {self.__class__.__name__}. Got {dims} instead." + ) + + @staticmethod + def _invert_permute(p): + def _find_inv(i): + for j, _p in enumerate(p): + if _p < 0: + inv = True + _p = len(p) + _p + else: + inv = False + if i == _p: + if inv: + return j - len(p) + else: + return j + else: + # unreachable + raise RuntimeError + + return [_find_inv(i) for i in range(len(p))] + + def _apply_transform(self, observation: torch.FloatTensor) -> torch.Tensor: + observation = observation.permute( + *list(range(observation.ndimension() - len(self.dims))), *self.dims + ) + return observation + + def _inv_apply_transform(self, state: torch.Tensor) -> torch.Tensor: + permuted_dims = self._invert_permute(self.dims) + state = state.permute( + *list(range(state.ndimension() - len(self.dims))), *permuted_dims + ) + return state + + @_apply_to_composite + def transform_observation_spec(self, observation_spec: TensorSpec) -> TensorSpec: + observation_spec = self._edit_space(observation_spec) + observation_spec.shape = torch.Size( + [ + *observation_spec.shape[: -len(self.dims)], + *[observation_spec.shape[dim] for dim in self.dims], + ] + ) + return observation_spec + + @_apply_to_composite_inv + def transform_input_spec(self, input_spec: TensorSpec) -> TensorSpec: + permuted_dims = self._invert_permute(self.dims) + input_spec = self._edit_space_inv(input_spec) + input_spec.shape = torch.Size( + [ + *input_spec.shape[: -len(permuted_dims)], + *[input_spec.shape[dim] for dim in permuted_dims], + ] + ) + return input_spec + + def _edit_space(self, spec: TensorSpec) -> None: + if isinstance(spec.space, ContinuousBox): + spec.space.high = self._apply_transform(spec.space.high) + spec.space.low = self._apply_transform(spec.space.low) + return spec + + def _edit_space_inv(self, spec: TensorSpec) -> None: + if isinstance(spec.space, ContinuousBox): + spec.space.high = self._inv_apply_transform(spec.space.high) + spec.space.low = self._inv_apply_transform(spec.space.low) + return spec + + class GrayScale(ObservationTransform): """Turns a pixel observation to grayscale.""" diff --git a/torchrl/modules/models/__init__.py b/torchrl/modules/models/__init__.py index 9b8dfd5b893..74ffb6ef6e3 100644 --- a/torchrl/modules/models/__init__.py +++ b/torchrl/modules/models/__init__.py @@ -8,6 +8,8 @@ from .exploration import NoisyLazyLinear, NoisyLinear, reset_noise from .model_based import DreamerActor, ObsDecoder, ObsEncoder, RSSMPosterior, RSSMPrior from .models import ( + Conv2dNet, + Conv3dNet, ConvNet, DdpgCnnActor, DdpgCnnQNet, diff --git a/torchrl/modules/models/models.py b/torchrl/modules/models/models.py index ba6344f3f03..1cc10316045 100644 --- a/torchrl/modules/models/models.py +++ b/torchrl/modules/models/models.py @@ -24,6 +24,7 @@ LazyMapping, SquashDims, Squeeze2dLayer, + SqueezeLayer, ) @@ -208,7 +209,7 @@ def __init__( if not (len(self.num_cells) == depth or depth is None): raise RuntimeError( "depth and num_cells length conflict, \ - consider matching or specifying a constan num_cells argument together with a a desired depth" + consider matching or specifying a constant num_cells argument together with a a desired depth" ) layers = self._make_net(device) super().__init__(*layers) @@ -411,7 +412,7 @@ def __init__( if not (len(getattr(self, _field)) == _depth or _depth is None): raise RuntimeError( f"depth={depth} and {_field}={len(getattr(self, _field))} length conflict, " - + f"consider matching or specifying a constan {_field} argument together with a a desired depth" + + f"consider matching or specifying a constant {_field} argument together with a a desired depth" ) self.out_features = self.num_cells[-1] @@ -486,6 +487,230 @@ def forward(self, inputs: torch.Tensor) -> torch.Tensor: return out +Conv2dNet = ConvNet + + +class Conv3dNet(nn.Sequential): + """A 3D-convolutional neural network. + + Args: + in_features (int, optional): number of input features. A lazy implementation that automatically retrieves + the input size will be used if none is provided. + depth (int, optional): depth of the network. A depth of 1 will produce a single linear layer network with the + desired input size, and with an output size equal to the last element of the num_cells argument. + If no depth is indicated, the depth information should be contained in the num_cells argument (see below). + If num_cells is an iterable and depth is indicated, both should match: len(num_cells) must be equal to + the depth. + num_cells (int or Sequence[int], optional): number of cells of every layer in between the input and output. If + an integer is provided, every layer will have the same number of cells. If an iterable is provided, + the linear layers out_features will match the content of num_cells. + default: ``[32, 32, 32]`` or ``[32] * depth` is depth is not ``None``. + kernel_sizes (int, Sequence[Union[int, Sequence[int]]]): Kernel size(s) of the conv network. If iterable, the length must match the + depth, defined by the num_cells or depth arguments. + strides (int or Sequence[int]): Stride(s) of the conv network. If iterable, the length must match the + depth, defined by the num_cells or depth arguments. + activation_class (Type[nn.Module]): activation class to be used. + default: nn.Tanh + activation_kwargs (dict, optional): kwargs to be used with the activation class; + norm_class (Type, optional): normalization class, if any; + norm_kwargs (dict, optional): kwargs to be used with the normalization layers; + bias_last_layer (bool): if ``True``, the last Linear layer will have a bias parameter. + default: True; + aggregator_class (Type[nn.Module]): aggregator to use at the end of the chain. + default: SquashDims; + aggregator_kwargs (dict, optional): kwargs for the aggregator_class; + squeeze_output (bool): whether the output should be squeezed of its singleton dimensions. + default: False. + device (Optional[DEVICE_TYPING]): device to create the module on. + + Examples: + >>> # All of the following examples provide valid, working MLPs + >>> cnet = Conv3dNet(in_features=3, depth=1, num_cells=[32,]) + >>> print(cnet) + Conv3dNet( + (0): Conv3d(3, 32, kernel_size=(3, 3, 3), stride=(1, 1, 1)) + (1): ELU(alpha=1.0) + (2): SquashDims() + ) + >>> cnet = Conv3dNet(in_features=3, depth=4, num_cells=32) + >>> print(cnet) + Conv3dNet( + (0): Conv3d(3, 32, kernel_size=(3, 3, 3), stride=(1, 1, 1)) + (1): ELU(alpha=1.0) + (2): Conv3d(32, 32, kernel_size=(3, 3, 3), stride=(1, 1, 1)) + (3): ELU(alpha=1.0) + (4): Conv3d(32, 32, kernel_size=(3, 3, 3), stride=(1, 1, 1)) + (5): ELU(alpha=1.0) + (6): Conv3d(32, 32, kernel_size=(3, 3, 3), stride=(1, 1, 1)) + (7): ELU(alpha=1.0) + (8): SquashDims() + ) + >>> cnet = Conv3dNet(in_features=3, num_cells=[32, 33, 34, 35]) # defines the depth by the num_cells arg + >>> print(cnet) + Conv3dNet( + (0): Conv3d(3, 32, kernel_size=(3, 3, 3), stride=(1, 1, 1)) + (1): ELU(alpha=1.0) + (2): Conv3d(32, 33, kernel_size=(3, 3, 3), stride=(1, 1, 1)) + (3): ELU(alpha=1.0) + (4): Conv3d(33, 34, kernel_size=(3, 3, 3), stride=(1, 1, 1)) + (5): ELU(alpha=1.0) + (6): Conv3d(34, 35, kernel_size=(3, 3, 3), stride=(1, 1, 1)) + (7): ELU(alpha=1.0) + (8): SquashDims() + ) + >>> cnet = Conv3dNet(in_features=3, num_cells=[32, 33, 34, 35], kernel_sizes=[3, 4, 5, (2, 3, 4)]) # defines kernels, possibly rectangular + >>> print(cnet) + Conv3dNet( + (0): Conv3d(3, 32, kernel_size=(3, 3, 3), stride=(1, 1, 1)) + (1): ELU(alpha=1.0) + (2): Conv3d(32, 33, kernel_size=(4, 4, 4), stride=(1, 1, 1)) + (3): ELU(alpha=1.0) + (4): Conv3d(33, 34, kernel_size=(5, 5, 5), stride=(1, 1, 1)) + (5): ELU(alpha=1.0) + (6): Conv3d(34, 35, kernel_size=(2, 3, 4), stride=(1, 1, 1)) + (7): ELU(alpha=1.0) + (8): SquashDims() + ) + + """ + + def __init__( + self, + in_features: Optional[int] = None, + depth: Optional[int] = None, + num_cells: Union[Sequence, int] = None, + kernel_sizes: Union[Sequence[Union[int, Sequence[int]]], int] = 3, + strides: Union[Sequence, int] = 1, + paddings: Union[Sequence, int] = 0, + activation_class: Type[nn.Module] = nn.ELU, + activation_kwargs: Optional[dict] = None, + norm_class: Optional[Type[nn.Module]] = None, + norm_kwargs: Optional[dict] = None, + bias_last_layer: bool = True, + aggregator_class: Optional[Type[nn.Module]] = SquashDims, + aggregator_kwargs: Optional[dict] = None, + squeeze_output: bool = False, + device: Optional[DEVICE_TYPING] = None, + ): + if num_cells is None: + if depth is None: + num_cells = [32, 32, 32] + else: + num_cells = [32] * depth + + self.in_features = in_features + self.activation_class = activation_class + self.activation_kwargs = ( + activation_kwargs if activation_kwargs is not None else {} + ) + self.norm_class = norm_class + self.norm_kwargs = norm_kwargs if norm_kwargs is not None else {} + self.bias_last_layer = bias_last_layer + self.aggregator_class = aggregator_class + self.aggregator_kwargs = ( + aggregator_kwargs if aggregator_kwargs is not None else {"ndims_in": 4} + ) + self.squeeze_output = squeeze_output + # self.single_bias_last_layer = single_bias_last_layer + + depth = _find_depth(depth, num_cells, kernel_sizes, strides, paddings) + self.depth = depth + if depth == 0: + raise ValueError("Null depth is not permitted with Conv3dNet.") + + for _field, _value in zip( + ["num_cells", "kernel_sizes", "strides", "paddings"], + [num_cells, kernel_sizes, strides, paddings], + ): + _depth = depth + setattr( + self, + _field, + (_value if isinstance(_value, Sequence) else [_value] * _depth), + ) + if not (len(getattr(self, _field)) == _depth or _depth is None): + raise ValueError( + f"depth={depth} and {_field}={len(getattr(self, _field))} length conflict, " + + f"consider matching or specifying a constant {_field} argument together with a a desired depth" + ) + + self.out_features = self.num_cells[-1] + + self.depth = len(self.kernel_sizes) + layers = self._make_net(device) + super().__init__(*layers) + + def _make_net(self, device: Optional[DEVICE_TYPING]) -> nn.Module: + layers = [] + in_features = [self.in_features] + self.num_cells[: self.depth] + out_features = self.num_cells + [self.out_features] + kernel_sizes = self.kernel_sizes + strides = self.strides + paddings = self.paddings + for i, (_in, _out, _kernel, _stride, _padding) in enumerate( + zip(in_features, out_features, kernel_sizes, strides, paddings) + ): + _bias = (i < len(in_features) - 1) or self.bias_last_layer + if _in is not None: + layers.append( + nn.Conv3d( + _in, + _out, + kernel_size=_kernel, + stride=_stride, + bias=_bias, + padding=_padding, + device=device, + ) + ) + else: + layers.append( + nn.LazyConv3d( + _out, + kernel_size=_kernel, + stride=_stride, + bias=_bias, + padding=_padding, + device=device, + ) + ) + + layers.append( + create_on_device( + self.activation_class, device, **self.activation_kwargs + ) + ) + if self.norm_class is not None: + layers.append( + create_on_device(self.norm_class, device, **self.norm_kwargs) + ) + + if self.aggregator_class is not None: + layers.append( + create_on_device( + self.aggregator_class, device, **self.aggregator_kwargs + ) + ) + + if self.squeeze_output: + layers.append(SqueezeLayer((-3, -2, -1))) + return layers + + def forward(self, inputs: torch.Tensor) -> torch.Tensor: + try: + *batch, C, D, L, W = inputs.shape + except ValueError as err: + raise ValueError( + f"The input value of {self.__class__.__name__} must have at least 4 dimensions, got {inputs.ndim} instead." + ) from err + if len(batch) > 1: + inputs = inputs.flatten(0, len(batch) - 1) + out = super().forward(inputs) + if len(batch) > 1: + out = out.unflatten(0, batch) + return out + + class DuelingMlpDQNet(nn.Module): """Creates a Dueling MLP Q-network. diff --git a/torchrl/modules/models/utils.py b/torchrl/modules/models/utils.py index 3e8515ab7aa..b4fa7eb58fd 100644 --- a/torchrl/modules/models/utils.py +++ b/torchrl/modules/models/utils.py @@ -96,7 +96,7 @@ def _find_depth(depth: Optional[int], *list_or_ints: Sequence): if isinstance(item, (list, tuple)): depth = len(item) if depth is None: - raise Exception( + raise ValueError( f"depth=None requires one of the input args (kernel_sizes, strides, " f"num_cells) to be a a list or tuple. Got {tuple(type(item) for item in list_or_ints)}" ) From b6929b891181eb162a2437b651e74414e898f691 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Sun, 17 Sep 2023 20:33:53 +0100 Subject: [PATCH 091/148] [Feature] Gym 'vectorized' envs compatibility (#1519) --- .../linux_libs/scripts_gym/batch_scripts.sh | 1 + docs/source/reference/envs.rst | 1 + test/_utils_internal.py | 26 ++ test/test_libs.py | 112 +++++++- torchrl/_utils.py | 4 +- torchrl/envs/common.py | 15 +- torchrl/envs/gym_like.py | 39 ++- torchrl/envs/libs/gym.py | 261 +++++++++++++++--- torchrl/envs/libs/robohive.py | 5 +- torchrl/envs/transforms/transforms.py | 85 +++++- 10 files changed, 497 insertions(+), 52 deletions(-) diff --git a/.github/unittest/linux_libs/scripts_gym/batch_scripts.sh b/.github/unittest/linux_libs/scripts_gym/batch_scripts.sh index ee1145d3f93..3fadedb0ffd 100755 --- a/.github/unittest/linux_libs/scripts_gym/batch_scripts.sh +++ b/.github/unittest/linux_libs/scripts_gym/batch_scripts.sh @@ -155,6 +155,7 @@ do pip install gymnasium[atari] fi pip install mo-gymnasium + pip install gymnasium-robotics $DIR/run_test.sh diff --git a/docs/source/reference/envs.rst b/docs/source/reference/envs.rst index bc757763a21..dc081183156 100644 --- a/docs/source/reference/envs.rst +++ b/docs/source/reference/envs.rst @@ -495,6 +495,7 @@ to be able to create this other composition: TimeMaxPool ToTensorImage UnsqueezeTransform + VecGymEnvTransform VecNorm VC1Transform VIPRewardTransform diff --git a/test/_utils_internal.py b/test/_utils_internal.py index 84dc6f33626..1af5a588e74 100644 --- a/test/_utils_internal.py +++ b/test/_utils_internal.py @@ -321,3 +321,29 @@ class MyClass: for key in td.keys(): MyClass.__annotations__[key] = torch.Tensor return tensorclass(MyClass) + + +def rollout_consistency_assertion( + rollout, *, done_key="done", observation_key="observation" +): + """Tests that observations in "next" match observations in the next root tensordict when done is False, and don't match otherwise.""" + + done = rollout[:, :-1]["next", done_key].squeeze(-1) + # data resulting from step, when it's not done + r_not_done = rollout[:, :-1]["next"][~done] + # data resulting from step, when it's not done, after step_mdp + r_not_done_tp1 = rollout[:, 1:][~done] + torch.testing.assert_close( + r_not_done[observation_key], r_not_done_tp1[observation_key] + ) + + if not done.any(): + return + + # data resulting from step, when it's done + r_done = rollout[:, :-1]["next"][done] + # data resulting from step, when it's done, after step_mdp and reset + r_done_tp1 = rollout[:, 1:][done] + assert ( + (r_done[observation_key] - r_done_tp1[observation_key]).norm(dim=-1) > 1e-1 + ).all(), (r_done[observation_key] - r_done_tp1[observation_key]).norm(dim=-1) diff --git a/test/test_libs.py b/test/test_libs.py index bb8444e22b4..ef2be615c2e 100644 --- a/test/test_libs.py +++ b/test/test_libs.py @@ -34,6 +34,7 @@ HALFCHEETAH_VERSIONED, PENDULUM_VERSIONED, PONG_VERSIONED, + rollout_consistency_assertion, ) from packaging import version from tensordict import LazyStackedTensorDict @@ -67,12 +68,14 @@ GymWrapper, MOGymEnv, MOGymWrapper, + set_gym_backend, ) from torchrl.envs.libs.habitat import _has_habitat, HabitatEnv from torchrl.envs.libs.jumanji import _has_jumanji, JumanjiEnv from torchrl.envs.libs.openml import OpenMLEnv from torchrl.envs.libs.pettingzoo import _has_pettingzoo, PettingZooEnv from torchrl.envs.libs.robohive import RoboHiveEnv +from torchrl.envs.libs.smacv2 import _has_smacv2, SMACv2Env from torchrl.envs.libs.vmas import _has_vmas, VmasEnv, VmasWrapper from torchrl.envs.utils import check_env_specs, ExplorationType, MarlGroupMapType from torchrl.modules import ActorCriticOperator, MLP, SafeModule, ValueOperator @@ -83,7 +86,7 @@ _has_sklearn = importlib.util.find_spec("sklearn") is not None -from torchrl.envs.libs.smacv2 import _has_smacv2, SMACv2Env +_has_gym_robotics = importlib.util.find_spec("gymnasium_robotics") is not None if _has_gym: try: @@ -323,6 +326,113 @@ def test_one_hot_and_categorical(self): # noqa: F811 # versions. return + @implement_for("gymnasium", "0.27.0", None) + # this env has Dict-based observation which is a nice thing to test + @pytest.mark.parametrize( + "envname", + ["HalfCheetah-v4", "CartPole-v1", "ALE/Pong-v5"] + + (["FetchReach-v2"] if _has_gym_robotics else []), + ) + def test_vecenvs_wrapper(self, envname): + import gymnasium + + # we can't use parametrize with implement_for + env = GymWrapper( + gymnasium.vector.SyncVectorEnv( + 2 * [lambda envname=envname: gymnasium.make(envname)] + ) + ) + assert env.batch_size == torch.Size([2]) + check_env_specs(env) + env = GymWrapper( + gymnasium.vector.AsyncVectorEnv( + 2 * [lambda envname=envname: gymnasium.make(envname)] + ) + ) + assert env.batch_size == torch.Size([2]) + check_env_specs(env) + + @implement_for("gymnasium", "0.27.0", None) + # this env has Dict-based observation which is a nice thing to test + @pytest.mark.parametrize( + "envname", + ["HalfCheetah-v4", "CartPole-v1", "ALE/Pong-v5"] + + (["FetchReach-v2"] if _has_gym_robotics else []), + ) + def test_vecenvs_env(self, envname): + from _utils_internal import rollout_consistency_assertion + + with set_gym_backend("gymnasium"): + env = GymEnv(envname, num_envs=2, from_pixels=False) + check_env_specs(env) + rollout = env.rollout(100, break_when_any_done=False) + for obs_key in env.observation_spec.keys(True, True): + rollout_consistency_assertion( + rollout, done_key="done", observation_key=obs_key + ) + + @implement_for("gym", "0.18", "0.27.0") + @pytest.mark.parametrize( + "envname", + ["CartPole-v1", "HalfCheetah-v4"], + ) + def test_vecenvs_wrapper(self, envname): # noqa: F811 + import gym + + # we can't use parametrize with implement_for + for envname in ["CartPole-v1", "HalfCheetah-v4"]: + env = GymWrapper( + gym.vector.SyncVectorEnv( + 2 * [lambda envname=envname: gym.make(envname)] + ) + ) + assert env.batch_size == torch.Size([2]) + check_env_specs(env) + env = GymWrapper( + gym.vector.AsyncVectorEnv( + 2 * [lambda envname=envname: gym.make(envname)] + ) + ) + assert env.batch_size == torch.Size([2]) + check_env_specs(env) + + @implement_for("gym", "0.18", "0.27.0") + @pytest.mark.parametrize( + "envname", + ["CartPole-v1", "HalfCheetah-v4"], + ) + def test_vecenvs_env(self, envname): # noqa: F811 + with set_gym_backend("gym"): + env = GymEnv(envname, num_envs=2, from_pixels=False) + check_env_specs(env) + rollout = env.rollout(100, break_when_any_done=False) + for obs_key in env.observation_spec.keys(True, True): + rollout_consistency_assertion( + rollout, done_key="done", observation_key=obs_key + ) + if envname != "CartPole-v1": + with set_gym_backend("gym"): + env = GymEnv(envname, num_envs=2, from_pixels=True) + check_env_specs(env) + + @implement_for("gym", None, "0.18") + @pytest.mark.parametrize( + "envname", + ["CartPole-v1", "HalfCheetah-v4"], + ) + def test_vecenvs_wrapper(self, envname): # noqa: F811 + # skipping tests for older versions of gym + ... + + @implement_for("gym", None, "0.18") + @pytest.mark.parametrize( + "envname", + ["CartPole-v1", "HalfCheetah-v4"], + ) + def test_vecenvs_env(self, envname): # noqa: F811 + # skipping tests for older versions of gym + ... + @implement_for("gym", None, "0.26") def _make_gym_environment(env_name): # noqa: F811 diff --git a/torchrl/_utils.py b/torchrl/_utils.py index 8d590b05210..7f5b80175be 100644 --- a/torchrl/_utils.py +++ b/torchrl/_utils.py @@ -285,8 +285,8 @@ def module_set(self): cls = inspect.getmodule(self.fn) setattr(cls, self.fn.__name__, self.fn) - @staticmethod - def import_module(module_name: Union[Callable, str]) -> str: + @classmethod + def import_module(cls, module_name: Union[Callable, str]) -> str: """Imports module and returns its version.""" if not callable(module_name): module = import_module(module_name) diff --git a/torchrl/envs/common.py b/torchrl/envs/common.py index e50621144cf..771c529933c 100644 --- a/torchrl/envs/common.py +++ b/torchrl/envs/common.py @@ -617,7 +617,7 @@ def action_spec(self, value: TensorSpec) -> None: ) if value.shape[: len(self.batch_size)] != self.batch_size: raise ValueError( - "The value of spec.shape must match the env batch size." + f"The value of spec.shape ({value.shape}) must match the env batch size ({self.batch_size})." ) if isinstance(value, CompositeSpec): @@ -791,7 +791,7 @@ def reward_spec(self, value: TensorSpec) -> None: ) if value.shape[: len(self.batch_size)] != self.batch_size: raise ValueError( - "The value of spec.shape must match the env batch size." + f"The value of spec.shape ({value.shape}) must match the env batch size ({self.batch_size})." ) if isinstance(value, CompositeSpec): for _ in value.values(True, True): # noqa: B007 @@ -820,6 +820,15 @@ def reward_spec(self, value: TensorSpec) -> None: # done spec def _get_done_keys(self): + if "full_done_spec" not in self.output_spec.keys(): + # populate the "done" entry + # this will be raised if there is not full_done_spec (unlikely) or no done_key + # Since output_spec is lazily populated with an empty composite spec for + # done_spec, the second case is much more likely to occur. + self.done_spec = DiscreteTensorSpec( + n=2, shape=(*self.batch_size, 1), dtype=torch.bool, device=self.device + ) + keys = self.output_spec["full_done_spec"].keys(True, True) if not len(keys): raise AttributeError("Could not find done spec") @@ -967,7 +976,7 @@ def done_spec(self, value: TensorSpec) -> None: ) if value.shape[: len(self.batch_size)] != self.batch_size: raise ValueError( - "The value of spec.shape must match the env batch size." + f"The value of spec.shape ({value.shape}) must match the env batch size ({self.batch_size})." ) if isinstance(value, CompositeSpec): for _ in value.values(True, True): # noqa: B007 diff --git a/torchrl/envs/gym_like.py b/torchrl/envs/gym_like.py index 289bb731278..c5b5ef1ad55 100644 --- a/torchrl/envs/gym_like.py +++ b/torchrl/envs/gym_like.py @@ -115,11 +115,11 @@ class GymLikeEnv(_EnvWrapper): It is also expected that env.reset() returns an observation similar to the one observed after a step is completed. """ - _info_dict_reader: BaseInfoDictReader + _info_dict_reader: List[BaseInfoDictReader] @classmethod def __new__(cls, *args, **kwargs): - cls._info_dict_reader = None + cls._info_dict_reader = [] return super().__new__(cls, *args, _batch_locked=True, **kwargs) def read_action(self, action): @@ -144,7 +144,7 @@ def read_done(self, done): done (np.ndarray, boolean or other format): done state obtained from the environment """ - return done, done + return done, done.any() if not isinstance(done, bool) else done def read_reward(self, reward): """Reads the reward and maps it to the reward space. @@ -231,8 +231,11 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: tensordict_out = TensorDict(obs_dict, batch_size=tensordict.batch_size) - if self.info_dict_reader is not None and info is not None: - self.info_dict_reader(info, tensordict_out) + if self.info_dict_reader and info is not None: + for info_dict_reader in self.info_dict_reader: + out = info_dict_reader(info, tensordict_out) + if out is not None: + tensordict_out = out tensordict_out = tensordict_out.to(self.device, non_blocking=True) return tensordict_out @@ -255,9 +258,12 @@ def _reset( source=source, batch_size=self.batch_size, ) - if self.info_dict_reader is not None and info is not None: - self.info_dict_reader(info, tensordict_out) - elif info is None and self.info_dict_reader is not None: + if self.info_dict_reader and info is not None: + for info_dict_reader in self.info_dict_reader: + out = info_dict_reader(info, tensordict_out) + if out is not None: + tensordict_out = out + elif info is None and self.info_dict_reader: # populate the reset with the items we have not seen from info for key, item in self.observation_spec.items(True, True): if key not in tensordict_out.keys(True, True): @@ -298,9 +304,12 @@ def set_info_dict_reader(self, info_dict_reader: BaseInfoDictReader) -> GymLikeE >>> assert "my_info_key" in tensordict.keys() """ - self.info_dict_reader = info_dict_reader - for info_key, spec in info_dict_reader.info_spec.items(): - self.observation_spec[info_key] = spec.to(self.device) + self.info_dict_reader.append(info_dict_reader) + if isinstance(info_dict_reader, BaseInfoDictReader): + # if we have a BaseInfoDictReader, we know what the specs will be + # In other cases (eg, RoboHive) we will need to figure it out empirically. + for info_key, spec in info_dict_reader.info_spec.items(): + self.observation_spec[info_key] = spec.to(self.device) return self def __repr__(self) -> str: @@ -314,4 +323,10 @@ def info_dict_reader(self): @info_dict_reader.setter def info_dict_reader(self, value: callable): - self._info_dict_reader = value + warnings.warn( + f"Please use {type(self)}.set_info_dict_reader method to set a new info reader. " + f"This method will append a reader to the list of existing readers (if any). " + f"Setting info_dict_reader directly will be soon deprecated.", + category=DeprecationWarning, + ) + self._info_dict_reader.append(value) diff --git a/torchrl/envs/libs/gym.py b/torchrl/envs/libs/gym.py index 51fc6588217..597579a09cd 100644 --- a/torchrl/envs/libs/gym.py +++ b/torchrl/envs/libs/gym.py @@ -2,21 +2,18 @@ # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. +import abc import importlib import warnings from copy import copy from types import ModuleType -from typing import Dict, List +from typing import Dict, List, Optional from warnings import warn +import numpy as np import torch -from torchrl.envs.utils import _classproperty - -try: - from torch.utils._contextlib import _DecoratorContextManager -except ModuleNotFoundError: - from torchrl._utils import _DecoratorContextManager +from tensordict import TensorDictBase from torchrl._utils import implement_for from torchrl.data.tensor_specs import ( @@ -31,8 +28,20 @@ UnboundedContinuousTensorSpec, ) from torchrl.data.utils import numpy_to_torch_dtype_dict +from torchrl.envs.batched_envs import CloudpickleWrapper -from torchrl.envs.gym_like import default_info_dict_reader, GymLikeEnv +from torchrl.envs.gym_like import ( + BaseInfoDictReader, + default_info_dict_reader, + GymLikeEnv, +) + +from torchrl.envs.utils import _classproperty + +try: + from torch.utils._contextlib import _DecoratorContextManager +except ModuleNotFoundError: + from torchrl._utils import _DecoratorContextManager DEFAULT_GYM = None IMPORT_ERROR = None @@ -42,6 +51,7 @@ _has_gym = importlib.util.find_spec("gymnasium") is not None _has_mo = importlib.util.find_spec("mo_gymnasium") is not None +_has_sb3 = importlib.util.find_spec("stable_baselines3") is not None class set_gym_backend(_DecoratorContextManager): @@ -199,7 +209,18 @@ def _gym_to_torchrl_spec_transform( """ gym = gym_backend() if isinstance(spec, gym.spaces.tuple.Tuple): - raise NotImplementedError("gym.spaces.tuple.Tuple mapping not yet implemented") + return torch.stack( + [ + _gym_to_torchrl_spec_transform( + s, + device=device, + categorical_action_encoding=categorical_action_encoding, + remap_state_to_observation=remap_state_to_observation, + ) + for s in spec + ], + 0, + ) if isinstance(spec, gym.spaces.discrete.Discrete): action_space_cls = ( DiscreteTensorSpec @@ -217,15 +238,32 @@ def _gym_to_torchrl_spec_transform( spec.n, device=device, dtype=numpy_to_torch_dtype_dict[spec.dtype] ) elif isinstance(spec, gym.spaces.multi_discrete.MultiDiscrete): - dtype = ( - numpy_to_torch_dtype_dict[spec.dtype] - if categorical_action_encoding - else torch.long - ) - return ( - MultiDiscreteTensorSpec(spec.nvec, device=device, dtype=dtype) - if categorical_action_encoding - else MultiOneHotDiscreteTensorSpec(spec.nvec, device=device, dtype=dtype) + if len(spec.nvec.shape) == 1 and len(np.unique(spec.nvec)) > 1: + dtype = ( + numpy_to_torch_dtype_dict[spec.dtype] + if categorical_action_encoding + else torch.long + ) + + return ( + MultiDiscreteTensorSpec(spec.nvec, device=device, dtype=dtype) + if categorical_action_encoding + else MultiOneHotDiscreteTensorSpec( + spec.nvec, device=device, dtype=dtype + ) + ) + + return torch.stack( + [ + _gym_to_torchrl_spec_transform( + spec[i], + device=device, + categorical_action_encoding=categorical_action_encoding, + remap_state_to_observation=remap_state_to_observation, + ) + for i in range(len(spec.nvec)) + ], + 0, ) elif isinstance(spec, gym.spaces.Box): shape = spec.shape @@ -343,7 +381,32 @@ class PixelObservationWrapper: return False -class GymWrapper(GymLikeEnv): +class _AsyncMeta(abc.ABCMeta): + def __call__(cls, *args, **kwargs): + instance: GymWrapper = super().__call__(*args, **kwargs) + if instance._is_batched: + from torchrl.envs.transforms.transforms import ( + TransformedEnv, + VecGymEnvTransform, + ) + + if _has_sb3: + from stable_baselines3.common.vec_env.base_vec_env import VecEnv + + if isinstance(instance._env, VecEnv): + backend = "sb3" + else: + backend = "gym" + else: + backend = "gym" + instance.set_info_dict_reader( + terminal_obs_reader(instance.observation_spec, backend=backend) + ) + return TransformedEnv(instance, VecGymEnvTransform()) + return instance + + +class GymWrapper(GymLikeEnv, metaclass=_AsyncMeta): """OpenAI Gym environment wrapper. Examples: @@ -390,6 +453,25 @@ def __init__(self, env=None, categorical_action_encoding=False, **kwargs): else: super().__init__(**kwargs) + @property + def _is_batched(self): + if _has_sb3: + from stable_baselines3.common.vec_env.base_vec_env import VecEnv + + tuple_of_classes = (VecEnv,) + else: + tuple_of_classes = () + return isinstance( + self._env, tuple_of_classes + (gym_backend("vector").VectorEnv,) + ) + + def _get_batch_size(self, env): + if hasattr(env, "num_envs"): + batch_size = torch.Size([env.num_envs, *self.batch_size]) + else: + batch_size = self.batch_size + return batch_size + def _check_kwargs(self, kwargs: Dict): if "env" not in kwargs: raise TypeError("Could not find environment key 'env' in kwargs.") @@ -403,6 +485,8 @@ def _build_env( from_pixels: bool = False, pixels_only: bool = False, ) -> "gym.core.Env": # noqa: F821 + self.batch_size = self._get_batch_size(env) + env_from_pixels = _is_from_pixels(env) from_pixels = from_pixels or env_from_pixels self.from_pixels = from_pixels @@ -556,9 +640,16 @@ def _make_specs(self, env: "gym.Env", batch_size=None) -> None: # noqa: F821 ) if not isinstance(observation_spec, CompositeSpec): if self.from_pixels: - observation_spec = CompositeSpec(pixels=observation_spec) + observation_spec = CompositeSpec( + pixels=observation_spec, shape=self.batch_size + ) else: - observation_spec = CompositeSpec(observation=observation_spec) + observation_spec = CompositeSpec( + observation=observation_spec, shape=self.batch_size + ) + elif observation_spec.shape[: len(self.batch_size)] != self.batch_size: + observation_spec.shape = self.batch_size + if hasattr(env, "reward_space") and env.reward_space is not None: reward_spec = _gym_to_torchrl_spec_transform( env.reward_space, @@ -577,7 +668,10 @@ def _make_specs(self, env: "gym.Env", batch_size=None) -> None: # noqa: F821 *batch_size, *observation_spec.shape ) self.action_spec = action_spec - self.reward_spec = reward_spec + if reward_spec.shape[: len(self.batch_size)] != self.batch_size: + self.reward_spec = reward_spec.expand(*self.batch_size, *reward_spec.shape) + else: + self.reward_spec = reward_spec self.observation_spec = observation_spec def _init_env(self): @@ -595,14 +689,30 @@ def rebuild_with_kwargs(self, **new_kwargs): @property def info_dict_reader(self): - if self._info_dict_reader is None: - self._info_dict_reader = default_info_dict_reader() + if not self._info_dict_reader: + self._info_dict_reader.append(default_info_dict_reader()) return self._info_dict_reader @info_dict_reader.setter def info_dict_reader(self, value: callable): self._info_dict_reader = value + def _reset( + self, tensordict: Optional[TensorDictBase] = None, **kwargs + ) -> TensorDictBase: + if self._is_batched: + # batched (aka 'vectorized') env reset is a bit special: envs are + # automatically reset. What we do here is just to check if _reset + # is present. If it is not, we just reset. Otherwise we just skip. + if tensordict is None: + return super()._reset(tensordict) + reset = tensordict.get("_reset", None) + if reset is None: + return super()._reset(tensordict) + elif reset is not None: + return tensordict.clone(False) + return super()._reset(tensordict, **kwargs) + ACCEPTED_TYPE_ERRORS = { "render_mode": "__init__() got an unexpected keyword argument 'render_mode'", @@ -648,6 +758,9 @@ def _set_gym_args( # noqa: F811 ) -> None: kwargs.setdefault("disable_env_checker", True) + def _async_env(self, *args, **kwargs): + return gym_backend("vector").AsyncVectorEnv(*args, **kwargs) + def _build_env( self, env_name: str, @@ -659,13 +772,10 @@ def _build_env( f"Consider downloading and installing gym from" f" {self.git_url}" ) - from_pixels = kwargs.get("from_pixels", False) + from_pixels = kwargs.pop("from_pixels", False) self._set_gym_default(kwargs, from_pixels) - if "from_pixels" in kwargs: - del kwargs["from_pixels"] - pixels_only = kwargs.get("pixels_only", True) - if "pixels_only" in kwargs: - del kwargs["pixels_only"] + pixels_only = kwargs.pop("pixels_only", True) + num_envs = kwargs.pop("num_envs", 0) made_env = False kwargs["frameskip"] = self.frame_skip self.wrapper_frame_skip = 1 @@ -692,7 +802,11 @@ def _build_env( kwargs.pop("render_mode") else: raise err - return super()._build_env(env, pixels_only=pixels_only, from_pixels=from_pixels) + env = super()._build_env(env, pixels_only=pixels_only, from_pixels=from_pixels) + if num_envs > 0: + env = self._async_env([CloudpickleWrapper(lambda: env)] * num_envs) + self.batch_size = torch.Size([num_envs, *self.batch_size]) + return env @implement_for("gym", None, "0.25.1") def _set_gym_default(self, kwargs, from_pixels: bool) -> None: # noqa: F811 @@ -766,3 +880,88 @@ def lib(self) -> ModuleType: raise ImportError("MO-gymnasium not found, check installation") from err _make_specs = set_gym_backend("gymnasium")(GymEnv._make_specs) + + +class terminal_obs_reader(BaseInfoDictReader): + """Terminal observation reader for 'vectorized' gym environments. + + When running envs in parallel, Gym(nasium) writes the result of the true call + to `step` in `"final_observation"` entry within the `info` dictionary. + + This breaks the natural flow and makes single-processed and multiprocessed envs + incompatible. + + This class reads the info obs, removes the `"final_observation"` from + the env and writes its content in the data. + + Next, a :class:`torchrl.envs.VecGymEnvTransform` transform will reorganise the + data by caching the result of the (implicit) reset and swap the true next + observation with the reset one. At reset time, the true reset data will be + replaced. + + Args: + observation_spec (CompositeSpec): The observation spec of the gym env. + backend (str, optional): the backend of the env. One of `"sb3"` for + stable-baselines3 or `"gym"` for gym/gymnasium. + + .. note:: In general, this class should not be handled directly. It is + created whenever a vectorized environment is placed within a :class:`GymWrapper`. + + """ + + backend_key = { + "sb3": "terminal_observation", + "gym": "final_observation", + } + + def __init__(self, observation_spec: CompositeSpec, backend, name="final"): + self.name = name + self._info_spec = CompositeSpec( + {(self.name, key): item.clone() for key, item in observation_spec.items()}, + shape=observation_spec.shape, + ) + self.backend = backend + + @property + def info_spec(self): + return self._info_spec + + def _read_obs(self, obs, key, tensor, index): + if obs is None: + return + if isinstance(obs, np.ndarray): + # Simplest case: there is one observation, + # presented as a np.ndarray. The key should be pixels or observation. + # We just write that value at its location in the tensor + tensor[index] = torch.as_tensor(obs, device=tensor.device) + elif isinstance(obs, dict): + if key not in obs: + raise KeyError( + f"The observation {key} could not be found in the final observation dict." + ) + subobs = obs[key] + if subobs is not None: + # if the obs is a dict, we expect that the key points also to + # a value in the obs. We retrieve this value and write it in the + # tensor + tensor[index] = torch.as_tensor(subobs, device=tensor.device) + + elif isinstance(obs, (list, tuple)): + # tuples are stacked along the first dimension when passing gym spaces + # to torchrl specs. As such, we can simply stack the tuple and set it + # at the relevant index (assuming stacking can be achieved) + tensor[index] = torch.as_tensor(obs, device=tensor.device) + else: + raise NotImplementedError( + f"Observations of type {type(obs)} are not supported yet." + ) + + def __call__(self, info_dict, tensordict): + terminal_obs = info_dict.get(self.backend_key[self.backend], None) + for key, item in self.info_spec.items(True, True): + final_obs = item.zero() + if terminal_obs is not None: + for i, obs in enumerate(terminal_obs): + self._read_obs(obs, key[-1], final_obs, index=i) + tensordict.set(key, final_obs) + return tensordict diff --git a/torchrl/envs/libs/robohive.py b/torchrl/envs/libs/robohive.py index 655a4eee16e..a1fc1d6d1ba 100644 --- a/torchrl/envs/libs/robohive.py +++ b/torchrl/envs/libs/robohive.py @@ -18,7 +18,8 @@ from torchrl.envs.libs.gym import _gym_to_torchrl_spec_transform, GymEnv from torchrl.envs.utils import _classproperty, make_composite_from_td -_has_robohive = importlib.util.find_spec("robohive") is not None +_has_gym = importlib.util.find_spec("gym") is not None +_has_robohive = importlib.util.find_spec("robohive") is not None and _has_gym if _has_robohive: os.environ.setdefault("sim_backend", "MUJOCO") @@ -164,7 +165,7 @@ def _build_env( # noqa: F811 self.from_pixels = from_pixels self.render_device = render_device if kwargs.get("read_info", True): - self.info_dict_reader = self.read_info + self.set_info_dict_reader(self.read_info) return env @classmethod diff --git a/torchrl/envs/transforms/transforms.py b/torchrl/envs/transforms/transforms.py index 2300194a61a..d491d3bfa03 100644 --- a/torchrl/envs/transforms/transforms.py +++ b/torchrl/envs/transforms/transforms.py @@ -657,7 +657,9 @@ def _set_seed(self, seed: Optional[int]): def _reset(self, tensordict: Optional[TensorDictBase] = None, **kwargs): if tensordict is not None: tensordict = tensordict.clone(recurse=False) - out_tensordict = self.base_env.reset(tensordict=tensordict, **kwargs) + out_tensordict = self.base_env._reset(tensordict=tensordict, **kwargs) + if tensordict is not None: + out_tensordict = tensordict.update(out_tensordict) out_tensordict = self.transform.reset(out_tensordict) mt_mode = self.transform.missing_tolerance @@ -5179,3 +5181,84 @@ def reset(self, tensordict: TensorDictBase) -> TensorDictBase: ) action_spec.update_mask(tensordict.get(self.in_keys[1], None)) return tensordict + + +class VecGymEnvTransform(Transform): + """A transform for GymWrapper subclasses that handles the auto-reset in a consistent way. + + Gym, gymnasium and SB3 provide vectorized (read, parallel or batched) environments + that are automatically reset. When this occurs, the actual observation resulting + from the action is saved within a key in the info. + The class :class:`torchrl.envs.libs.gym.terminal_obs_reader` reads that observation + and stores it in a ``"final"`` key within the output tensordict. + In turn, this transform reads that final data, swaps it with the observation + written in its place that results from the actual reset, and saves the + reset output in a private container. The resulting data truly reflects + the output of the step. + + Then, when calling `env.reset`, the saved data is written back where it belongs + (and the `reset` is a no-op). + + This transform is automatically appended to the gym env whenever the wrapper + is created with an async env. + + Args: + final_name (str, optional): the name of the final observation in the dict. + Defaults to `"final"`. + + .. note:: In general, this class should not be handled directly. It is + created whenever a vectorized environment is placed within a :class:`GymWrapper`. + + """ + + def __init__(self, final_name="final"): + self.final_name = final_name + super().__init__(in_keys=[]) + self._memo = {} + + def _step( + self, tensordict: TensorDictBase, next_tensordict: TensorDictBase + ) -> TensorDictBase: + # save the final info + done = self._memo["done"] = next_tensordict.get("done") + final = next_tensordict.pop("final") + # if anything's done, we need to swap the final obs + if done.any(): + done = done.squeeze(-1) + saved_next = next_tensordict.select(*final.keys(True, True)).clone() + next_tensordict[done] = final[done] + self._memo["saved_done"] = saved_next + else: + self._memo["saved_done"] = None + return next_tensordict + + def reset(self, tensordict: TensorDictBase) -> TensorDictBase: + done = self._memo.get("done", None) + reset = tensordict.get("_reset", done) + if done is not None: + done = done.view_as(reset) + if ( + reset is not done + and (reset != done).any() + and (not reset.all() or not reset.any()) + ): + raise RuntimeError( + "Cannot partially reset a gym(nasium) async env with a reset mask that does not match the done mask. " + f"Got reset={reset}\nand done={done}" + ) + # if not reset.any(), we don't need to do anything. + # if reset.all(), we don't either (bc GymWrapper will call a plain reset). + if reset is not None and reset.any() and not reset.all(): + saved_done = self._memo["saved_done"] + reset = reset.view(tensordict.shape) + updated_td = torch.where( + ~reset, tensordict.select(*saved_done.keys(True, True)), saved_done + ) + tensordict.update(updated_td) + tensordict.set("done", tensordict.get("done").clone().fill_(0)) + tensordict.pop("final", None) + return tensordict + + def transform_observation_spec(self, observation_spec: TensorSpec) -> TensorSpec: + del observation_spec[self.final_name] + return observation_spec From e28f1e1c5a9afb1cb3eb2a0a48dab4da50c44d9c Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Mon, 18 Sep 2023 16:52:43 +0100 Subject: [PATCH 092/148] [CI] Fix RoboHive CI (#1541) --- .github/unittest/linux_libs/scripts_robohive/setup_env.sh | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/unittest/linux_libs/scripts_robohive/setup_env.sh b/.github/unittest/linux_libs/scripts_robohive/setup_env.sh index 451693f0a07..50625f1e906 100755 --- a/.github/unittest/linux_libs/scripts_robohive/setup_env.sh +++ b/.github/unittest/linux_libs/scripts_robohive/setup_env.sh @@ -74,9 +74,5 @@ conda deactivate && conda activate "${env_dir}" pip install pip --upgrade conda env update --file "${this_dir}/environment.yml" --prune -#conda install -c conda-forge fltk -y -#pip install git+https://github.com/vmoens/mj_envs@patch-2 -pip install git+https://github.com/vikashplus/robohive@dev - -#pip uninstall free-mujoco-py -y +pip install git+https://github.com/vikashplus/robohive@main From ef4e9e039215337d23a010137f491aed7932a0c6 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 20 Sep 2023 11:28:16 +0100 Subject: [PATCH 093/148] [Refactor] Fix imports (#1551) --- test/test_libs.py | 13 +++++++++++-- torchrl/__init__.py | 2 -- torchrl/envs/libs/robohive.py | 12 +++++++----- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/test/test_libs.py b/test/test_libs.py index ef2be615c2e..b23708c0924 100644 --- a/test/test_libs.py +++ b/test/test_libs.py @@ -74,7 +74,7 @@ from torchrl.envs.libs.jumanji import _has_jumanji, JumanjiEnv from torchrl.envs.libs.openml import OpenMLEnv from torchrl.envs.libs.pettingzoo import _has_pettingzoo, PettingZooEnv -from torchrl.envs.libs.robohive import RoboHiveEnv +from torchrl.envs.libs.robohive import _has_robohive, RoboHiveEnv from torchrl.envs.libs.smacv2 import _has_smacv2, SMACv2Env from torchrl.envs.libs.vmas import _has_vmas, VmasEnv, VmasWrapper from torchrl.envs.utils import check_env_specs, ExplorationType, MarlGroupMapType @@ -1977,9 +1977,18 @@ def test_collector(self, task, parallel): break +@pytest.mark.skipif(not _has_robohive, reason="SMACv2 not found") class TestRoboHive: - @pytest.mark.parametrize("envname", RoboHiveEnv.env_list) + # unfortunately we must import robohive to get the available envs + # and this import will occur whenever pytest is run on this file. + # The other option would be not to use parametrize but that also + # means less informative error trace stacks. + # In the CI, robohive should not coexist with other libs so that's fine. + # Locally these imports can be annoying, especially given the amount of + # stuff printed by robohive. + @pytest.mark.parametrize("envname", RoboHiveEnv.available_envs) @pytest.mark.parametrize("from_pixels", [True, False]) + @set_gym_backend("gym") def test_robohive(self, envname, from_pixels): if any(substr in envname for substr in ("_vr3m", "_vrrl", "_vflat", "_vvc1s")): print("not testing envs with prebuilt rendering") diff --git a/torchrl/__init__.py b/torchrl/__init__.py index 5f928cd1ca6..bc240bbeed0 100644 --- a/torchrl/__init__.py +++ b/torchrl/__init__.py @@ -12,8 +12,6 @@ if torch.cuda.device_count() > 1: n = torch.cuda.device_count() - 1 os.environ["MUJOCO_EGL_DEVICE_ID"] = str(1 + (os.getpid() % n)) - # if VERBOSE: - print("MUJOCO_EGL_DEVICE_ID: ", os.environ["MUJOCO_EGL_DEVICE_ID"]) from ._extension import _init_extension diff --git a/torchrl/envs/libs/robohive.py b/torchrl/envs/libs/robohive.py index a1fc1d6d1ba..fd332062813 100644 --- a/torchrl/envs/libs/robohive.py +++ b/torchrl/envs/libs/robohive.py @@ -78,9 +78,15 @@ def CURR_DIR(cls): else: return None + @_classproperty + def available_envs(cls): + if not _has_robohive: + return + RoboHiveEnv.register_envs() + yield from cls.env_list + @classmethod def register_envs(cls): - if not _has_robohive: raise ImportError( "Cannot load robohive from the current virtual environment." @@ -333,7 +339,3 @@ def get_available_cams(cls, env_name): env = gym.make(env_name) cams = [env.sim.model.id2name(ic, 7) for ic in range(env.sim.model.ncam)] return cams - - -if _has_robohive: - RoboHiveEnv.register_envs() From 7070ffd252c35c1f0a99bb948910051fb617b33d Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Wed, 20 Sep 2023 11:45:42 +0100 Subject: [PATCH 094/148] [Feature] Pettingzoo: add multiagent dimension to single agent groups (#1550) Signed-off-by: Matteo Bettini --- torchrl/envs/libs/pettingzoo.py | 55 ++++++++++----------------------- 1 file changed, 16 insertions(+), 39 deletions(-) diff --git a/torchrl/envs/libs/pettingzoo.py b/torchrl/envs/libs/pettingzoo.py index da10fb7074e..dbbe3dea7c4 100644 --- a/torchrl/envs/libs/pettingzoo.py +++ b/torchrl/envs/libs/pettingzoo.py @@ -82,11 +82,11 @@ class PettingZooWrapper(_EnvWrapper): batch_size=torch.Size([3]))}, adversary: TensorDict( fields={ - action: Tensor(shape=torch.Size([9]), device=cpu, dtype=torch.int64, is_shared=False), - action_mask: Tensor(shape=torch.Size([9]), device=cpu, dtype=torch.bool, is_shared=False), - done: Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.bool, is_shared=False), - observation: Tensor(shape=torch.Size([3, 3, 2]), device=cpu, dtype=torch.int8, is_shared=False)}, - batch_size=torch.Size([]))}, + action: Tensor(shape=torch.Size([1, 9]), device=cpu, dtype=torch.int64, is_shared=False), + action_mask: Tensor(shape=torch.Size([1, 9]), device=cpu, dtype=torch.bool, is_shared=False), + done: Tensor(shape=torch.Size([1, 1]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([1, 3, 3, 2]), device=cpu, dtype=torch.int8, is_shared=False)}, + batch_size=torch.Size([1]))}, batch_size=torch.Size([])) >>> print(env.group_map) {"agent": ["agent_0", "agent_1", "agent_2"], "adversary": ["adversary_0"]} @@ -351,12 +351,6 @@ def _make_group_specs(self, group_name: str, agent_names: List[str]): }, shape=torch.Size((n_agents,)), ) - if n_agents == 1: - # When there is only one agent in the group we remove the singleton corresponding to the group size - group_observation_spec = group_observation_spec.squeeze(0) - group_action_spec = group_action_spec.squeeze(0) - group_reward_spec = group_reward_spec.squeeze(0) - group_done_spec = group_done_spec.squeeze(0) return ( group_observation_spec, group_action_spec, @@ -474,10 +468,7 @@ def _reset( group_observation = tensordict_out.get((group, "observation")) group_info = tensordict_out.get((group, "info"), None) - for i, agent in enumerate(agent_names): - index = ( - i if len(agent_names) > 1 else Ellipsis - ) # If group has one agent we index with '...' + for index, agent in enumerate(agent_names): group_observation[index] = self.observation_spec[group, "observation"][ index ].encode(observation_dict[agent]) @@ -560,11 +551,8 @@ def _step( group_done = tensordict_out.get((group, "done")) group_info = tensordict_out.get((group, "info"), None) - for i, agent in enumerate(agent_names): + for index, agent in enumerate(agent_names): if agent in observation_dict: # Live agents - index = ( - i if len(agent_names) > 1 else Ellipsis - ) # If group has one agent, we index with '...' group_observation[index] = self.observation_spec[ group, "observation" ][index].encode(observation_dict[agent]) @@ -605,8 +593,7 @@ def _step_parallel( group_action_np = self.input_spec[ "full_action_spec", group, "action" ].to_numpy(group_action) - for i, agent in enumerate(agents): - index = i if len(agents) > 1 else Ellipsis + for index, agent in enumerate(agents): action_dict[agent] = group_action_np[index] return self._env.step(action_dict) @@ -618,11 +605,7 @@ def _step_aec( for group, agents in self.group_map.items(): if self.agent_selection in agents: - agent_index = ( - agents.index(self._env.agent_selection) - if len(agents) > 1 - else Ellipsis - ) + agent_index = agents.index(self._env.agent_selection) group_action = tensordict.get((group, "action")) group_action_np = self.input_spec[ "full_action_spec", group, "action" @@ -658,10 +641,7 @@ def _update_action_mask(self, td, observation_dict, info_dict): if self.has_action_mask[group]: group_mask = td.get((group, "action_mask")) group_mask += True - for i, agent in enumerate(agents): - index = ( - i if len(agents) > 1 else Ellipsis - ) # If group has one agent we index with '...' + for index, agent in enumerate(agents): agent_obs = observation_dict[agent] agent_info = info_dict[agent] if isinstance(agent_obs, Dict) and "action_mask" in agent_obs: @@ -699,10 +679,7 @@ def _update_agent_mask(self, td): group_mask += True # We now add dead agents to the mask - for i, agent in enumerate(agents): - index = ( - i if len(agents) > 1 else Ellipsis - ) # If group has one agent we index with '...' + for index, agent in enumerate(agents): if agent not in agents_acting: group_mask[index] = False @@ -762,11 +739,11 @@ class PettingZooEnv(PettingZooWrapper): batch_size=torch.Size([3]))}, adversary: TensorDict( fields={ - action: Tensor(shape=torch.Size([9]), device=cpu, dtype=torch.int64, is_shared=False), - action_mask: Tensor(shape=torch.Size([9]), device=cpu, dtype=torch.bool, is_shared=False), - done: Tensor(shape=torch.Size([1]), device=cpu, dtype=torch.bool, is_shared=False), - observation: Tensor(shape=torch.Size([3, 3, 2]), device=cpu, dtype=torch.int8, is_shared=False)}, - batch_size=torch.Size([]))}, + action: Tensor(shape=torch.Size([1, 9]), device=cpu, dtype=torch.int64, is_shared=False), + action_mask: Tensor(shape=torch.Size([1, 9]), device=cpu, dtype=torch.bool, is_shared=False), + done: Tensor(shape=torch.Size([1, 1]), device=cpu, dtype=torch.bool, is_shared=False), + observation: Tensor(shape=torch.Size([1, 3, 3, 2]), device=cpu, dtype=torch.int8, is_shared=False)}, + batch_size=torch.Size([1]))}, batch_size=torch.Size([])) >>> print(env.group_map) {"agent": ["agent_0", "agent_1", "agent_2"], "adversary": ["adversary_0"]} From cab33245617c440458fb23fdd93bce8f1c24d93e Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Wed, 20 Sep 2023 11:46:33 +0100 Subject: [PATCH 095/148] [Test] Remove import of test class (#1549) Signed-off-by: Matteo Bettini --- test/_utils_internal.py | 88 +++++++++++++++++++++++++++++++++++- test/test_collector.py | 10 +++-- test/test_env.py | 99 ++--------------------------------------- 3 files changed, 97 insertions(+), 100 deletions(-) diff --git a/test/_utils_internal.py b/test/_utils_internal.py index 1af5a588e74..a8e31556ac5 100644 --- a/test/_utils_internal.py +++ b/test/_utils_internal.py @@ -17,7 +17,7 @@ import torch import torch.cuda -from tensordict import tensorclass +from tensordict import tensorclass, TensorDict from torchrl._utils import implement_for, seed_generator from torchrl.envs import MultiThreadedEnv, ObservationNorm @@ -347,3 +347,89 @@ def rollout_consistency_assertion( assert ( (r_done[observation_key] - r_done_tp1[observation_key]).norm(dim=-1) > 1e-1 ).all(), (r_done[observation_key] - r_done_tp1[observation_key]).norm(dim=-1) + + +def check_rollout_consistency_multikey_env(td: TensorDict, max_steps: int): + index_batch_size = (0,) * (len(td.batch_size) - 1) + + # Check done and reset for root + observation_is_max = td["next", "observation"][..., 0, 0, 0] == max_steps + 1 + next_is_done = td["next", "done"][index_batch_size][:-1].squeeze(-1) + assert (td["next", "done"][observation_is_max]).all() + assert (~td["next", "done"][~observation_is_max]).all() + # Obs after done is 0 + assert (td["observation"][index_batch_size][1:][next_is_done] == 0).all() + # Obs after not done is previous obs + assert ( + td["observation"][index_batch_size][1:][~next_is_done] + == td["next", "observation"][index_batch_size][:-1][~next_is_done] + ).all() + # Check observation and reward update with count action for root + action_is_count = td["action"].long().argmax(-1).to(torch.bool) + assert ( + td["next", "observation"][action_is_count] + == td["observation"][action_is_count] + 1 + ).all() + assert (td["next", "reward"][action_is_count] == 1).all() + # Check observation and reward do not update with no-count action for root + assert ( + td["next", "observation"][~action_is_count] + == td["observation"][~action_is_count] + ).all() + assert (td["next", "reward"][~action_is_count] == 0).all() + + # Check done and reset for nested_1 + observation_is_max = td["next", "nested_1", "observation"][..., 0] == max_steps + 1 + next_is_done = td["next", "nested_1", "done"][index_batch_size][:-1].squeeze(-1) + assert (td["next", "nested_1", "done"][observation_is_max]).all() + assert (~td["next", "nested_1", "done"][~observation_is_max]).all() + # Obs after done is 0 + assert ( + td["nested_1", "observation"][index_batch_size][1:][next_is_done] == 0 + ).all() + # Obs after not done is previous obs + assert ( + td["nested_1", "observation"][index_batch_size][1:][~next_is_done] + == td["next", "nested_1", "observation"][index_batch_size][:-1][~next_is_done] + ).all() + # Check observation and reward update with count action for nested_1 + action_is_count = td["nested_1"]["action"].to(torch.bool) + assert ( + td["next", "nested_1", "observation"][action_is_count] + == td["nested_1", "observation"][action_is_count] + 1 + ).all() + assert (td["next", "nested_1", "gift"][action_is_count] == 1).all() + # Check observation and reward do not update with no-count action for nested_1 + assert ( + td["next", "nested_1", "observation"][~action_is_count] + == td["nested_1", "observation"][~action_is_count] + ).all() + assert (td["next", "nested_1", "gift"][~action_is_count] == 0).all() + + # Check done and reset for nested_2 + observation_is_max = td["next", "nested_2", "observation"][..., 0] == max_steps + 1 + next_is_done = td["next", "nested_2", "done"][index_batch_size][:-1].squeeze(-1) + assert (td["next", "nested_2", "done"][observation_is_max]).all() + assert (~td["next", "nested_2", "done"][~observation_is_max]).all() + # Obs after done is 0 + assert ( + td["nested_2", "observation"][index_batch_size][1:][next_is_done] == 0 + ).all() + # Obs after not done is previous obs + assert ( + td["nested_2", "observation"][index_batch_size][1:][~next_is_done] + == td["next", "nested_2", "observation"][index_batch_size][:-1][~next_is_done] + ).all() + # Check observation and reward update with count action for nested_2 + action_is_count = td["nested_2"]["azione"].squeeze(-1).to(torch.bool) + assert ( + td["next", "nested_2", "observation"][action_is_count] + == td["nested_2", "observation"][action_is_count] + 1 + ).all() + assert (td["next", "nested_2", "reward"][action_is_count] == 1).all() + # Check observation and reward do not update with no-count action for nested_2 + assert ( + td["next", "nested_2", "observation"][~action_is_count] + == td["nested_2", "observation"][~action_is_count] + ).all() + assert (td["next", "nested_2", "reward"][~action_is_count] == 0).all() diff --git a/test/test_collector.py b/test/test_collector.py index 21862cf8297..7b9c645815a 100644 --- a/test/test_collector.py +++ b/test/test_collector.py @@ -9,7 +9,12 @@ import numpy as np import pytest import torch -from _utils_internal import generate_seeds, PENDULUM_VERSIONED, PONG_VERSIONED +from _utils_internal import ( + check_rollout_consistency_multikey_env, + generate_seeds, + PENDULUM_VERSIONED, + PONG_VERSIONED, +) from mocking_classes import ( ContinuousActionVecMockEnv, CountingBatchedEnv, @@ -29,7 +34,6 @@ from tensordict.nn import TensorDictModule from tensordict.tensordict import assert_allclose_td, TensorDict -from test_env import TestMultiKeyEnvs from torch import nn from torchrl._utils import prod, seed_generator from torchrl.collectors import aSyncDataCollector, SyncDataCollector @@ -1582,7 +1586,7 @@ def test_collector(self, batch_size, frames_per_batch, max_steps, seed=1): ccollector.shutdown() for done_key in env.done_keys: assert _replace_last(done_key, "_reset") not in _td.keys(True, True) - TestMultiKeyEnvs.check_rollout_consistency(_td, max_steps=max_steps) + check_rollout_consistency_multikey_env(_td, max_steps=max_steps) def test_multi_collector_consistency( self, seed=1, frames_per_batch=20, batch_dim=10 diff --git a/test/test_env.py b/test/test_env.py index ffa336331f3..5d4ccf01567 100644 --- a/test/test_env.py +++ b/test/test_env.py @@ -17,6 +17,7 @@ from _utils_internal import ( _make_envs, CARTPOLE_VERSIONED, + check_rollout_consistency_multikey_env, get_default_devices, HALFCHEETAH_VERSIONED, PENDULUM_VERSIONED, @@ -2019,100 +2020,6 @@ def test_vec_env(self, batch_size, env_type, rollout_steps=4, n_workers=2): @pytest.mark.parametrize("seed", [0]) class TestMultiKeyEnvs: - @staticmethod - def check_rollout_consistency(td: TensorDict, max_steps: int): - index_batch_size = (0,) * (len(td.batch_size) - 1) - - # Check done and reset for root - observation_is_max = td["next", "observation"][..., 0, 0, 0] == max_steps + 1 - next_is_done = td["next", "done"][index_batch_size][:-1].squeeze(-1) - assert (td["next", "done"][observation_is_max]).all() - assert (~td["next", "done"][~observation_is_max]).all() - # Obs after done is 0 - assert (td["observation"][index_batch_size][1:][next_is_done] == 0).all() - # Obs after not done is previous obs - assert ( - td["observation"][index_batch_size][1:][~next_is_done] - == td["next", "observation"][index_batch_size][:-1][~next_is_done] - ).all() - # Check observation and reward update with count action for root - action_is_count = td["action"].long().argmax(-1).to(torch.bool) - assert ( - td["next", "observation"][action_is_count] - == td["observation"][action_is_count] + 1 - ).all() - assert (td["next", "reward"][action_is_count] == 1).all() - # Check observation and reward do not update with no-count action for root - assert ( - td["next", "observation"][~action_is_count] - == td["observation"][~action_is_count] - ).all() - assert (td["next", "reward"][~action_is_count] == 0).all() - - # Check done and reset for nested_1 - observation_is_max = ( - td["next", "nested_1", "observation"][..., 0] == max_steps + 1 - ) - next_is_done = td["next", "nested_1", "done"][index_batch_size][:-1].squeeze(-1) - assert (td["next", "nested_1", "done"][observation_is_max]).all() - assert (~td["next", "nested_1", "done"][~observation_is_max]).all() - # Obs after done is 0 - assert ( - td["nested_1", "observation"][index_batch_size][1:][next_is_done] == 0 - ).all() - # Obs after not done is previous obs - assert ( - td["nested_1", "observation"][index_batch_size][1:][~next_is_done] - == td["next", "nested_1", "observation"][index_batch_size][:-1][ - ~next_is_done - ] - ).all() - # Check observation and reward update with count action for nested_1 - action_is_count = td["nested_1"]["action"].to(torch.bool) - assert ( - td["next", "nested_1", "observation"][action_is_count] - == td["nested_1", "observation"][action_is_count] + 1 - ).all() - assert (td["next", "nested_1", "gift"][action_is_count] == 1).all() - # Check observation and reward do not update with no-count action for nested_1 - assert ( - td["next", "nested_1", "observation"][~action_is_count] - == td["nested_1", "observation"][~action_is_count] - ).all() - assert (td["next", "nested_1", "gift"][~action_is_count] == 0).all() - - # Check done and reset for nested_2 - observation_is_max = ( - td["next", "nested_2", "observation"][..., 0] == max_steps + 1 - ) - next_is_done = td["next", "nested_2", "done"][index_batch_size][:-1].squeeze(-1) - assert (td["next", "nested_2", "done"][observation_is_max]).all() - assert (~td["next", "nested_2", "done"][~observation_is_max]).all() - # Obs after done is 0 - assert ( - td["nested_2", "observation"][index_batch_size][1:][next_is_done] == 0 - ).all() - # Obs after not done is previous obs - assert ( - td["nested_2", "observation"][index_batch_size][1:][~next_is_done] - == td["next", "nested_2", "observation"][index_batch_size][:-1][ - ~next_is_done - ] - ).all() - # Check observation and reward update with count action for nested_2 - action_is_count = td["nested_2"]["azione"].squeeze(-1).to(torch.bool) - assert ( - td["next", "nested_2", "observation"][action_is_count] - == td["nested_2", "observation"][action_is_count] + 1 - ).all() - assert (td["next", "nested_2", "reward"][action_is_count] == 1).all() - # Check observation and reward do not update with no-count action for nested_2 - assert ( - td["next", "nested_2", "observation"][~action_is_count] - == td["nested_2", "observation"][~action_is_count] - ).all() - assert (td["next", "nested_2", "reward"][~action_is_count] == 0).all() - @pytest.mark.parametrize("batch_size", [(), (2,), (2, 1)]) @pytest.mark.parametrize("rollout_steps", [1, 5]) @pytest.mark.parametrize("max_steps", [2, 5]) @@ -2121,7 +2028,7 @@ def test_rollout(self, batch_size, rollout_steps, max_steps, seed): policy = MultiKeyCountingEnvPolicy(full_action_spec=env.action_spec) td = env.rollout(rollout_steps, policy=policy) torch.manual_seed(seed) - self.check_rollout_consistency(td, max_steps=max_steps) + check_rollout_consistency_multikey_env(td, max_steps=max_steps) @pytest.mark.parametrize("batch_size", [(), (2,), (2, 1)]) @pytest.mark.parametrize("rollout_steps", [5]) @@ -2148,7 +2055,7 @@ def test_parallel( rollout_steps, policy=policy, ) - self.check_rollout_consistency(td, max_steps=max_steps) + check_rollout_consistency_multikey_env(td, max_steps=max_steps) @pytest.mark.parametrize( From 16bb91c30693d6b369d2a55f2dfb89731c558050 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 20 Sep 2023 15:45:52 +0100 Subject: [PATCH 096/148] [Quality] Filter out warnings in subprocs (#1552) --- docs/source/reference/collectors.rst | 5 +++++ docs/source/reference/envs.rst | 6 ++++++ torchrl/__init__.py | 4 ++++ torchrl/_utils.py | 21 +++++++++++++++++++++ torchrl/collectors/collectors.py | 3 ++- torchrl/collectors/distributed/generic.py | 6 +++--- torchrl/collectors/distributed/rpc.py | 6 +++--- torchrl/collectors/distributed/sync.py | 6 +++--- torchrl/envs/batched_envs.py | 4 ++-- 9 files changed, 49 insertions(+), 12 deletions(-) diff --git a/docs/source/reference/collectors.rst b/docs/source/reference/collectors.rst index d34a266d3db..aa8de179f20 100644 --- a/docs/source/reference/collectors.rst +++ b/docs/source/reference/collectors.rst @@ -105,6 +105,11 @@ node or across multiple nodes. building a parallel environment or collector can result in a slower collection than using ``device="cuda"`` when available. +.. note:: + Given the library's many optional dependencies (eg, Gym, Gymnasium, and many others) + warnings can quickly become quite annoying in multiprocessed / distributed settings. + By default, TorchRL filters out these warnings in sub-processes. If one still wishes to + see these warnings, they can be displayed by setting ``torchrl.filter_warnings_subprocess=False``. .. currentmodule:: torchrl.collectors.distributed diff --git a/docs/source/reference/envs.rst b/docs/source/reference/envs.rst index dc081183156..c49e12fc2b0 100644 --- a/docs/source/reference/envs.rst +++ b/docs/source/reference/envs.rst @@ -136,6 +136,12 @@ environments in parallel. As this class inherits from :class:`SerialEnv`, it enjoys the exact same API as other environment. Of course, a :class:`ParallelEnv` will have a batch size that corresponds to its environment count: +.. note:: + Given the library's many optional dependencies (eg, Gym, Gymnasium, and many others) + warnings can quickly become quite annoying in multiprocessed / distributed settings. + By default, TorchRL filters out these warnings in sub-processes. If one still wishes to + see these warnings, they can be displayed by setting ``torchrl.filter_warnings_subprocess=False``. + It is important that your environment specs match the input and output that it sends and receives, as :class:`ParallelEnv` will create buffers from these specs to communicate with the spawn processes. Check the :func:`~torchrl.envs.utils.check_env_specs` method for a sanity check. diff --git a/torchrl/__init__.py b/torchrl/__init__.py index bc240bbeed0..7d807244f70 100644 --- a/torchrl/__init__.py +++ b/torchrl/__init__.py @@ -41,3 +41,7 @@ import torchrl.modules import torchrl.objectives import torchrl.trainers + +# Filter warnings in subprocesses: True by default given the multiple optional +# deps of the library. This can be turned on via `torchrl.filter_warnings_subprocess = False`. +filter_warnings_subprocess = True diff --git a/torchrl/_utils.py b/torchrl/_utils.py index 7f5b80175be..48670d3e8de 100644 --- a/torchrl/_utils.py +++ b/torchrl/_utils.py @@ -23,6 +23,8 @@ import numpy as np import torch from packaging.version import parse +from torch import multiprocessing as mp + VERBOSE = strtobool(os.environ.get("VERBOSE", "0")) _os_is_windows = sys.platform == "win32" @@ -529,3 +531,22 @@ def clone(self): def get_trace(): """A simple debugging util to spot where a function is being called.""" traceback.print_stack() + + +class _ProcessNoWarn(mp.Process): + """A private Process class that shuts down warnings on the subprocess.""" + @wraps(mp.Process.__init__) + def __init__(self, *args, **kwargs): + import torchrl + + if torchrl.filter_warnings_subprocess: + self.filter_warnings_subprocess = torchrl.filter_warnings_subprocess + super().__init__(*args, **kwargs) + + def run(self, *args, **kwargs): + if self.filter_warnings_subprocess: + import warnings + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + return mp.Process.run(self, *args, **kwargs) + return mp.Process.run(self, *args, **kwargs) diff --git a/torchrl/collectors/collectors.py b/torchrl/collectors/collectors.py index b06a9b15252..16a50df1c0f 100644 --- a/torchrl/collectors/collectors.py +++ b/torchrl/collectors/collectors.py @@ -31,6 +31,7 @@ from torchrl._utils import ( _check_for_faulty_process, accept_remote_rref_udf_invocation, + _ProcessNoWarn, prod, RL_WARNINGS, VERBOSE, @@ -1335,7 +1336,7 @@ def _run_processes(self) -> None: "idx": i, "interruptor": self.interruptor, } - proc = mp.Process(target=_main_async_collector, kwargs=kwargs) + proc = _ProcessNoWarn(target=_main_async_collector, kwargs=kwargs) # proc.daemon can't be set as daemonic processes may be launched by the process itself try: proc.start() diff --git a/torchrl/collectors/distributed/generic.py b/torchrl/collectors/distributed/generic.py index 8f37e2a8458..752a09231c0 100644 --- a/torchrl/collectors/distributed/generic.py +++ b/torchrl/collectors/distributed/generic.py @@ -14,9 +14,9 @@ import torch.cuda from tensordict import TensorDict -from torch import multiprocessing as mp, nn +from torch import nn -from torchrl._utils import VERBOSE +from torchrl._utils import _ProcessNoWarn, VERBOSE from torchrl.collectors import MultiaSyncDataCollector from torchrl.collectors.collectors import ( DataCollectorBase, @@ -611,7 +611,7 @@ def _init_worker_dist_mp(self, i): if not isinstance(env_make, (EnvBase, EnvCreator)): env_make = CloudpickleWrapper(env_make) TCP_PORT = self.tcp_port - job = mp.Process( + job = _ProcessNoWarn( target=_distributed_init_collection_node, args=( i + 1, diff --git a/torchrl/collectors/distributed/rpc.py b/torchrl/collectors/distributed/rpc.py index 84eb963f04b..5fef2dd1666 100644 --- a/torchrl/collectors/distributed/rpc.py +++ b/torchrl/collectors/distributed/rpc.py @@ -32,10 +32,10 @@ SUBMITIT_ERR = err import torch.cuda from tensordict import TensorDict -from torch import multiprocessing as mp, nn +from torch import nn from torch.distributed import rpc -from torchrl._utils import VERBOSE +from torchrl._utils import _ProcessNoWarn, VERBOSE from torchrl.collectors import MultiaSyncDataCollector from torchrl.collectors.collectors import ( @@ -447,7 +447,7 @@ def _init_worker_rpc(self, executor, i): print("job id", job.job_id) # ID of your job return job elif self.launcher == "mp": - job = mp.Process( + job = _ProcessNoWarn( target=_rpc_init_collection_node, args=( i + 1, diff --git a/torchrl/collectors/distributed/sync.py b/torchrl/collectors/distributed/sync.py index 4fe3a4aa460..66e55318832 100644 --- a/torchrl/collectors/distributed/sync.py +++ b/torchrl/collectors/distributed/sync.py @@ -13,8 +13,8 @@ import torch.cuda from tensordict import TensorDict -from torch import multiprocessing as mp, nn -from torchrl._utils import VERBOSE +from torch import nn +from torchrl._utils import _ProcessNoWarn, VERBOSE from torchrl.collectors import MultiaSyncDataCollector from torchrl.collectors.collectors import ( @@ -397,7 +397,7 @@ def _init_worker_dist_mp(self, i): env_make = self.env_constructors[i] if not isinstance(env_make, (EnvBase, EnvCreator)): env_make = CloudpickleWrapper(env_make) - job = mp.Process( + job = _ProcessNoWarn( target=_distributed_init_collection_node, args=( i + 1, diff --git a/torchrl/envs/batched_envs.py b/torchrl/envs/batched_envs.py index 56a368d1053..67944af1f35 100644 --- a/torchrl/envs/batched_envs.py +++ b/torchrl/envs/batched_envs.py @@ -20,7 +20,7 @@ from tensordict._tensordict import _unravel_key_to_tuple from tensordict.tensordict import LazyStackedTensorDict, TensorDictBase from torch import multiprocessing as mp -from torchrl._utils import _check_for_faulty_process, VERBOSE +from torchrl._utils import _check_for_faulty_process, _ProcessNoWarn, VERBOSE from torchrl.data.utils import CloudpickleWrapper, contains_lazy_spec, DEVICE_TYPING from torchrl.envs.common import EnvBase from torchrl.envs.env_creator import get_env_metadata @@ -715,7 +715,7 @@ def _start_workers(self) -> None: if not isinstance(env_fun, EnvCreator): env_fun = CloudpickleWrapper(env_fun) - process = ctx.Process( + process = _ProcessNoWarn( target=_run_worker_pipe_shared_mem, args=( parent_pipe, From 6aa14445b9e0522318441af0f9e4dd286fda3baf Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Wed, 20 Sep 2023 15:58:54 +0100 Subject: [PATCH 097/148] [BugFix] Sparse info in SMACv2 (#1546) Signed-off-by: Matteo Bettini Co-authored-by: Vincent Moens --- torchrl/envs/libs/smacv2.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/torchrl/envs/libs/smacv2.py b/torchrl/envs/libs/smacv2.py index 7e3b2decded..061f90f354c 100644 --- a/torchrl/envs/libs/smacv2.py +++ b/torchrl/envs/libs/smacv2.py @@ -377,10 +377,10 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: obs = self.get_obs() state = self.get_state() info = self.observation_spec["info"].encode(info) - if "episode_limit" not in info.keys(): - info["episode_limit"] = self.observation_spec["info"][ - "episode_limit" - ].zero() + actual_keys = info.keys() + for expected_key, spec in self.observation_spec["info"].items(): + if expected_key not in actual_keys: + info[expected_key] = spec.zero() reward = torch.tensor( reward, device=self.device, dtype=torch.float32 From b63faba8aa9eeb56a3bd09d4adde4faecc71f4f7 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Wed, 20 Sep 2023 16:00:35 +0100 Subject: [PATCH 098/148] [BugFix] Instantiate 2 losses with different keys (#1553) Signed-off-by: Matteo Bettini --- test/test_cost.py | 9 +++++++++ torchrl/objectives/common.py | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/test/test_cost.py b/test/test_cost.py index 174f70772be..6b940331f7e 100644 --- a/test/test_cost.py +++ b/test/test_cost.py @@ -10128,6 +10128,15 @@ def test_single_call(self, has_target, value_key, single_call, detach_next=True) assert (value != value_).all() +def test_instantiate_with_different_keys(): + loss_1 = DQNLoss(value_network=nn.Linear(3, 3), action_space="one_hot") + loss_1.set_keys(reward="a") + assert loss_1.tensor_keys.reward == "a" + loss_2 = DQNLoss(value_network=nn.Linear(3, 3), action_space="one_hot") + loss_2.set_keys(reward="b") + assert loss_1.tensor_keys.reward == "a" + + class TestBuffer: # @pytest.mark.parametrize('dtype', (torch.double, torch.float, torch.half)) # def test_param_cast(self, dtype): diff --git a/torchrl/objectives/common.py b/torchrl/objectives/common.py index a5fa8c592d5..bdccbda3808 100644 --- a/torchrl/objectives/common.py +++ b/torchrl/objectives/common.py @@ -102,7 +102,6 @@ def tensor_keys(self) -> _AcceptedKeys: def __new__(cls, *args, **kwargs): cls.forward = set_exploration_type(ExplorationType.MODE)(cls.forward) - cls._tensor_keys = cls._AcceptedKeys() self = super().__new__(cls) return self @@ -113,6 +112,7 @@ def __init__(self): self._value_estimator = None self._has_update_associated = {} self.value_type = self.default_value_estimator + self._tensor_keys = self._AcceptedKeys() self.register_forward_pre_hook(_updater_check_forward_prehook) # self.register_forward_pre_hook(_parameters_to_tensordict) From 5c318cf1fa8fd790a6a2ea462b40f69915296476 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 20 Sep 2023 16:03:41 +0100 Subject: [PATCH 099/148] [Feature] Unbind specs (#1555) --- test/test_specs.py | 205 +++++++++++++++++++++++++++++++++++ torchrl/data/tensor_specs.py | 181 +++++++++++++++++++++++++++++-- 2 files changed, 375 insertions(+), 11 deletions(-) diff --git a/test/test_specs.py b/test/test_specs.py index 2959e1db1fb..008956d91f2 100644 --- a/test/test_specs.py +++ b/test/test_specs.py @@ -1762,6 +1762,211 @@ def test_unboundeddiscrete( assert spec == spec.clone() assert spec is not spec.clone() +class TestUnbind: + @pytest.mark.parametrize( + "shape1", + [ + (5, 4) + ] + ) + def test_binary(self, shape1): + spec = BinaryDiscreteTensorSpec( + n=4, shape=shape1, device="cpu", dtype=torch.bool + ) + assert spec == torch.stack(spec.unbind(0), 0) + with pytest.raises(ValueError): + spec.unbind(-1) + + @pytest.mark.parametrize( + "shape1,mini,maxi", + [ + [(10,), -torch.ones([]), torch.ones([])], + [None, -torch.ones([10]), torch.ones([])], + [None, -torch.ones([]), torch.ones([10])], + [(10,), -torch.ones([]), torch.ones([10])], + [(10,), -torch.ones([10]), torch.ones([])], + [(10,), -torch.ones([10]), torch.ones([10])], + ], + ) + def test_bounded(self, shape1, mini, maxi): + spec = BoundedTensorSpec( + mini, maxi, shape=shape1, device="cpu", dtype=torch.bool + ) + assert spec == torch.stack(spec.unbind(0), 0) + with pytest.raises(ValueError): + spec.unbind(-1) + + def test_composite(self): + batch_size = (5,) + spec1 = BoundedTensorSpec( + -torch.ones([*batch_size, 10]), + torch.ones([*batch_size, 10]), + shape=( + *batch_size, + 10, + ), + device="cpu", + dtype=torch.bool, + ) + spec2 = BinaryDiscreteTensorSpec( + n=4, shape=(*batch_size, 4), device="cpu", dtype=torch.bool + ) + spec3 = DiscreteTensorSpec( + n=4, shape=batch_size, device="cpu", dtype=torch.long + ) + spec4 = MultiDiscreteTensorSpec( + nvec=(4, 5, 6), shape=(*batch_size, 3), device="cpu", dtype=torch.long + ) + spec5 = MultiOneHotDiscreteTensorSpec( + nvec=(4, 5, 6), shape=(*batch_size, 15), device="cpu", dtype=torch.long + ) + spec6 = OneHotDiscreteTensorSpec( + n=15, shape=(*batch_size, 15), device="cpu", dtype=torch.long + ) + spec7 = UnboundedContinuousTensorSpec( + shape=(*batch_size, 9), + device="cpu", + dtype=torch.float64, + ) + spec8 = UnboundedDiscreteTensorSpec( + shape=(*batch_size, 9), + device="cpu", + dtype=torch.long, + ) + spec = CompositeSpec( + spec1=spec1, + spec2=spec2, + spec3=spec3, + spec4=spec4, + spec5=spec5, + spec6=spec6, + spec7=spec7, + spec8=spec8, + shape=batch_size, + ) + assert spec == torch.stack(spec.unbind(0), 0) + assert spec == torch.stack(spec.unbind(-1), -1) + + @pytest.mark.parametrize( + "shape1", + [ + (5,), + (5,6) + ] + ) + def test_discrete( + self, + shape1, + ): + spec = DiscreteTensorSpec(n=4, shape=shape1, device="cpu", dtype=torch.long) + assert spec == torch.stack(spec.unbind(0), 0) + assert spec == torch.stack(spec.unbind(-1), -1) + + @pytest.mark.parametrize( + "shape1", + [ + (5,), + (5,6,) + ] + ) + def test_multidiscrete( + self, + shape1, + ): + if shape1 is None: + shape1 = (3,) + else: + shape1 = (*shape1, 3) + spec = MultiDiscreteTensorSpec( + nvec=(4, 5, 6), shape=shape1, device="cpu", dtype=torch.long + ) + assert spec == torch.stack(spec.unbind(0), 0) + with pytest.raises(ValueError): + spec.unbind(-1) + + @pytest.mark.parametrize( + "shape1", + [ + (5,), + (5,6,) + ] + ) + def test_multionehot( + self, + shape1, + ): + if shape1 is None: + shape1 = (15,) + else: + shape1 = (*shape1, 15) + spec = MultiOneHotDiscreteTensorSpec( + nvec=(4, 5, 6), shape=shape1, device="cpu", dtype=torch.long + ) + assert spec == torch.stack(spec.unbind(0), 0) + with pytest.raises(ValueError): + spec.unbind(-1) + + @pytest.mark.parametrize( + "shape1", + [ + (5,), + (5,6,) + ], + ) + def test_onehot( + self, + shape1, + ): + if shape1 is None: + shape1 = (15,) + else: + shape1 = (*shape1, 15) + spec = OneHotDiscreteTensorSpec( + n=15, shape=shape1, device="cpu", dtype=torch.long + ) + assert spec == torch.stack(spec.unbind(0), 0) + with pytest.raises(ValueError): + spec.unbind(-1) + + @pytest.mark.parametrize( + "shape1", + [ + (5,), + (5,6,) + ] + ) + def test_unbounded( + self, + shape1, + ): + if shape1 is None: + shape1 = (15,) + else: + shape1 = (*shape1, 15) + spec = UnboundedContinuousTensorSpec( + shape=shape1, device="cpu", dtype=torch.float64 + ) + assert spec == torch.stack(spec.unbind(0), 0) + assert spec == torch.stack(spec.unbind(-1), -1) + + @pytest.mark.parametrize( + "shape1", + [ + (5,), + (5,6,) + ] + ) + def test_unboundeddiscrete( + self, + shape1, + ): + if shape1 is None: + shape1 = (15,) + else: + shape1 = (*shape1, 15) + spec = UnboundedDiscreteTensorSpec(shape=shape1, device="cpu", dtype=torch.long) + assert spec == torch.stack(spec.unbind(0), 0) + assert spec == torch.stack(spec.unbind(-1), -1) @pytest.mark.parametrize( "shape,stack_dim", diff --git a/torchrl/data/tensor_specs.py b/torchrl/data/tensor_specs.py index 01a88bb6fb5..cec707d8a82 100644 --- a/torchrl/data/tensor_specs.py +++ b/torchrl/data/tensor_specs.py @@ -1230,7 +1230,7 @@ def expand(self, *shape): def squeeze(self, dim=None): if self.shape[-1] == 1 and dim in (len(self.shape), -1, None): raise ValueError( - "Final dimension of OneHotDiscreteTensorSpec must remain unchanged" + f"Final dimension of {type(self)} must remain unchanged" ) shape = _squeezed_shape(self.shape, dim) @@ -1251,7 +1251,7 @@ def squeeze(self, dim=None): def unsqueeze(self, dim: int): if dim in (len(self.shape), -1): raise ValueError( - "Final dimension of OneHotDiscreteTensorSpec must remain unchanged" + f"Final dimension of {type(self)} must remain unchanged" ) shape = _unsqueezed_shape(self.shape, dim) @@ -1267,6 +1267,31 @@ def unsqueeze(self, dim: int): mask=mask, ) + def unbind(self, dim: int): + if dim in (len(self.shape), -1): + raise ValueError( + f"Final dimension of {type(self)} must remain unchanged" + ) + orig_dim = dim + if dim < 0: + dim = len(self.shape) + dim + if dim < 0: + raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + shape = tuple(s for i, s in enumerate(self.shape) if i != dim) + mask = self.mask + if mask is not None: + mask = mask.unbind(dim) + else: + mask = (None,) * self.shape[dim] + return tuple(self.__class__( + n=shape[-1], + shape=shape, + device=self.device, + dtype=self.dtype, + use_register=self.use_register, + mask=mask[i], + ) for i in range(self.shape[dim])) + def rand(self, shape=None) -> torch.Tensor: if shape is None: shape = self.shape[:-1] @@ -1590,6 +1615,27 @@ def unsqueeze(self, dim: int): dtype=self.dtype, ) + def unbind(self, dim: int): + if dim in (len(self.shape), -1): + raise ValueError( + f"Final dimension of {type(self)} must remain unchanged" + ) + orig_dim = dim + if dim < 0: + dim = len(self.shape) + dim + if dim < 0: + raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + shape = tuple(s for i, s in enumerate(self.shape) if i != dim) + low = self.space.low.unbind(dim) + high = self.space.high.unbind(dim) + return tuple(self.__class__( + low=low[i], + high=high[i], + shape=shape, + device=self.device, + dtype=self.dtype, + ) for i in range(self.shape[dim])) + def rand(self, shape=None) -> torch.Tensor: if shape is None: shape = torch.Size([]) @@ -1784,6 +1830,18 @@ def __getitem__(self, idx: SHAPE_INDEX_TYPING): """Indexes the current TensorSpec based on the provided index.""" indexed_shape = torch.Size(_shape_indexing(self.shape, idx)) return self.__class__(shape=indexed_shape, device=self.device, dtype=self.dtype) + def unbind(self, dim: int): + orig_dim = dim + if dim < 0: + dim = len(self.shape) + dim + if dim < 0: + raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + shape = tuple(s for i, s in enumerate(self.shape) if i != dim) + return tuple(self.__class__( + shape=shape, + device=self.device, + dtype=self.dtype, + ) for i in range(self.shape[dim])) @dataclass(repr=False) @@ -1876,6 +1934,18 @@ def __getitem__(self, idx: SHAPE_INDEX_TYPING): """Indexes the current TensorSpec based on the provided index.""" indexed_shape = torch.Size(_shape_indexing(self.shape, idx)) return self.__class__(shape=indexed_shape, device=self.device, dtype=self.dtype) + def unbind(self, dim: int): + orig_dim = dim + if dim < 0: + dim = len(self.shape) + dim + if dim < 0: + raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + shape = tuple(s for i, s in enumerate(self.shape) if i != dim) + return tuple(self.__class__( + shape=shape, + device=self.device, + dtype=self.dtype, + ) for i in range(self.shape[dim])) @dataclass(repr=False) @@ -2169,7 +2239,7 @@ def expand(self, *shape): def squeeze(self, dim=None): if self.shape[-1] == 1 and dim in (len(self.shape), -1, None): raise ValueError( - "Final dimension of MultiOneHotDiscreteTensorSpec must remain unchanged" + f"Final dimension of {type(self)} must remain unchanged" ) shape = _squeezed_shape(self.shape, dim) @@ -2187,13 +2257,33 @@ def squeeze(self, dim=None): def unsqueeze(self, dim: int): if dim in (len(self.shape), -1): raise ValueError( - "Final dimension of MultiOneHotDiscreteTensorSpec must remain unchanged" + f"Final dimension of {type(self)} must remain unchanged" ) shape = _unsqueezed_shape(self.shape, dim) mask = self.mask.reshape(shape) if self.mask is not None else None return self.__class__( nvec=self.nvec, shape=shape, device=self.device, dtype=self.dtype, mask=mask ) + def unbind(self, dim: int): + if dim in (len(self.shape), -1): + raise ValueError( + f"Final dimension of {type(self)} must remain unchanged" + ) + orig_dim = dim + if dim < 0: + dim = len(self.shape) + dim + if dim < 0: + raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + shape = tuple(s for i, s in enumerate(self.shape) if i != dim) + mask = self.mask + if mask is None: + mask = (None,)*self.shape[dim] + else: + mask = mask.unbind(dim) + + return tuple(self.__class__( + nvec=self.nvec, shape=shape, device=self.device, dtype=self.dtype, mask=mask[i] + ) for i in range(self.shape[dim])) def __getitem__(self, idx: SHAPE_INDEX_TYPING): """Indexes the current TensorSpec based on the provided index. @@ -2418,6 +2508,25 @@ def unsqueeze(self, dim: int): dtype=self.dtype, mask=mask, ) + def unbind(self, dim: int): + orig_dim = dim + if dim < 0: + dim = len(self.shape) + dim + if dim < 0: + raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + shape = tuple(s for i, s in enumerate(self.shape) if i != dim) + mask = self.mask + if mask is None: + mask = (None,)*self.shape[dim] + else: + mask = mask.unbind(dim) + return tuple(self.__class__( + n=self.space.n, + shape=shape, + device=self.device, + dtype=self.dtype, + mask=mask[i] + ) for i in range(self.shape[dim])) def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> CompositeSpec: if isinstance(dest, torch.dtype): @@ -2489,7 +2598,7 @@ def expand(self, *shape): f"shape of the {self.__class__.__name__} spec in expand()." ) return self.__class__( - n=shape[-1], shape=shape, device=self.device, dtype=self.dtype + n=self.shape[-1], shape=shape, device=self.device, dtype=self.dtype ) def squeeze(self, dim=None): @@ -2497,14 +2606,29 @@ def squeeze(self, dim=None): if shape is None: return self return self.__class__( - n=shape[-1], shape=shape, device=self.device, dtype=self.dtype + n=self.shape[-1], shape=shape, device=self.device, dtype=self.dtype ) def unsqueeze(self, dim: int): shape = _unsqueezed_shape(self.shape, dim) return self.__class__( - n=shape[-1], shape=shape, device=self.device, dtype=self.dtype + n=self.shape[-1], shape=shape, device=self.device, dtype=self.dtype ) + def unbind(self, dim: int): + if dim in (len(self.shape)-1, -1): + raise ValueError( + f"Final dimension of {type(self)} must remain unchanged" + ) + + orig_dim = dim + if dim < 0: + dim = len(self.shape) + dim + if dim < 0: + raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + shape = tuple(s for i, s in enumerate(self.shape) if i != dim) + return tuple(self.__class__( + n=self.shape[-1], shape=shape, device=self.device, dtype=self.dtype + ) for i in range(self.shape[dim])) def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> CompositeSpec: if isinstance(dest, torch.dtype): @@ -2821,9 +2945,8 @@ def expand(self, *shape): def squeeze(self, dim: int | None = None): if self.shape[-1] == 1 and dim in (len(self.shape), -1, None): raise ValueError( - "Final dimension of MultiDiscreteTensorSpec must remain unchanged" + f"Final dimension of {type(self)} must remain unchanged" ) - shape = _squeezed_shape(self.shape, dim) if shape is None: return self @@ -2842,7 +2965,7 @@ def squeeze(self, dim: int | None = None): def unsqueeze(self, dim: int): if dim in (len(self.shape), -1): raise ValueError( - "Final dimension of MultiDiscreteTensorSpec must remain unchanged" + f"Final dimension of {type(self)} must remain unchanged" ) shape = _unsqueezed_shape(self.shape, dim) nvec = self.nvec.unsqueeze(dim) @@ -2856,6 +2979,30 @@ def unsqueeze(self, dim: int): dtype=self.dtype, mask=mask, ) + def unbind(self, dim: int): + if dim in (len(self.shape), -1): + raise ValueError( + f"Final dimension of {type(self)} must remain unchanged" + ) + orig_dim = dim + if dim < 0: + dim = len(self.shape) + dim + if dim < 0: + raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + shape = tuple(s for i, s in enumerate(self.shape) if i != dim) + mask = self.mask + nvec = self.nvec.unbind(dim) + if mask is not None: + mask = mask.unbind(dim) + else: + mask = (None,)*self.shape[dim] + return tuple(self.__class__( + nvec=nvec[i], + shape=shape, + device=self.device, + dtype=self.dtype, + mask=mask[i], + ) for i in range(self.shape[dim])) def __getitem__(self, idx: SHAPE_INDEX_TYPING): """Indexes the current TensorSpec based on the provided index.""" @@ -3507,7 +3654,19 @@ def unsqueeze(self, dim: int): shape=shape, device=device, ) - + def unbind(self, dim: int): + orig_dim = dim + if dim < 0: + dim = len(self.shape) + dim + if dim < 0: + raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + shape = (s for i, s in enumerate(self.shape) if i != dim) + unbound_vals = {key: val.unbind(dim) for key, val in self.items()} + return tuple( + self.__class__( + {key: val[i] for key, val in unbound_vals.items()}, shape=shape, device=self.device, + ) for i in range(self.shape[dim]) + ) def lock_(self, recurse=False): """Locks the CompositeSpec and prevents modification of its content. From 4470fc0b753a62408708008f2eadd01dce87ec8e Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 20 Sep 2023 16:06:48 +0100 Subject: [PATCH 100/148] [Minor] Missing lint (#1556) --- test/test_specs.py | 211 +++++++++++++++++++++++++++++++++ torchrl/data/tensor_specs.py | 221 ++++++++++++++++++++--------------- 2 files changed, 339 insertions(+), 93 deletions(-) diff --git a/test/test_specs.py b/test/test_specs.py index 008956d91f2..469a6425c8f 100644 --- a/test/test_specs.py +++ b/test/test_specs.py @@ -1968,6 +1968,217 @@ def test_unboundeddiscrete( assert spec == torch.stack(spec.unbind(0), 0) assert spec == torch.stack(spec.unbind(-1), -1) +class TestUnbind: + @pytest.mark.parametrize("shape1", [(5, 4)]) + def test_binary(self, shape1): + spec = BinaryDiscreteTensorSpec( + n=4, shape=shape1, device="cpu", dtype=torch.bool + ) + assert spec == torch.stack(spec.unbind(0), 0) + with pytest.raises(ValueError): + spec.unbind(-1) + + @pytest.mark.parametrize( + "shape1,mini,maxi", + [ + [(10,), -torch.ones([]), torch.ones([])], + [None, -torch.ones([10]), torch.ones([])], + [None, -torch.ones([]), torch.ones([10])], + [(10,), -torch.ones([]), torch.ones([10])], + [(10,), -torch.ones([10]), torch.ones([])], + [(10,), -torch.ones([10]), torch.ones([10])], + ], + ) + def test_bounded(self, shape1, mini, maxi): + spec = BoundedTensorSpec( + mini, maxi, shape=shape1, device="cpu", dtype=torch.bool + ) + assert spec == torch.stack(spec.unbind(0), 0) + with pytest.raises(ValueError): + spec.unbind(-1) + + def test_composite(self): + batch_size = (5,) + spec1 = BoundedTensorSpec( + -torch.ones([*batch_size, 10]), + torch.ones([*batch_size, 10]), + shape=( + *batch_size, + 10, + ), + device="cpu", + dtype=torch.bool, + ) + spec2 = BinaryDiscreteTensorSpec( + n=4, shape=(*batch_size, 4), device="cpu", dtype=torch.bool + ) + spec3 = DiscreteTensorSpec( + n=4, shape=batch_size, device="cpu", dtype=torch.long + ) + spec4 = MultiDiscreteTensorSpec( + nvec=(4, 5, 6), shape=(*batch_size, 3), device="cpu", dtype=torch.long + ) + spec5 = MultiOneHotDiscreteTensorSpec( + nvec=(4, 5, 6), shape=(*batch_size, 15), device="cpu", dtype=torch.long + ) + spec6 = OneHotDiscreteTensorSpec( + n=15, shape=(*batch_size, 15), device="cpu", dtype=torch.long + ) + spec7 = UnboundedContinuousTensorSpec( + shape=(*batch_size, 9), + device="cpu", + dtype=torch.float64, + ) + spec8 = UnboundedDiscreteTensorSpec( + shape=(*batch_size, 9), + device="cpu", + dtype=torch.long, + ) + spec = CompositeSpec( + spec1=spec1, + spec2=spec2, + spec3=spec3, + spec4=spec4, + spec5=spec5, + spec6=spec6, + spec7=spec7, + spec8=spec8, + shape=batch_size, + ) + assert spec == torch.stack(spec.unbind(0), 0) + assert spec == torch.stack(spec.unbind(-1), -1) + + @pytest.mark.parametrize("shape1", [(5,), (5, 6)]) + def test_discrete( + self, + shape1, + ): + spec = DiscreteTensorSpec(n=4, shape=shape1, device="cpu", dtype=torch.long) + assert spec == torch.stack(spec.unbind(0), 0) + assert spec == torch.stack(spec.unbind(-1), -1) + + @pytest.mark.parametrize( + "shape1", + [ + (5,), + ( + 5, + 6, + ), + ], + ) + def test_multidiscrete( + self, + shape1, + ): + if shape1 is None: + shape1 = (3,) + else: + shape1 = (*shape1, 3) + spec = MultiDiscreteTensorSpec( + nvec=(4, 5, 6), shape=shape1, device="cpu", dtype=torch.long + ) + assert spec == torch.stack(spec.unbind(0), 0) + with pytest.raises(ValueError): + spec.unbind(-1) + + @pytest.mark.parametrize( + "shape1", + [ + (5,), + ( + 5, + 6, + ), + ], + ) + def test_multionehot( + self, + shape1, + ): + if shape1 is None: + shape1 = (15,) + else: + shape1 = (*shape1, 15) + spec = MultiOneHotDiscreteTensorSpec( + nvec=(4, 5, 6), shape=shape1, device="cpu", dtype=torch.long + ) + assert spec == torch.stack(spec.unbind(0), 0) + with pytest.raises(ValueError): + spec.unbind(-1) + + @pytest.mark.parametrize( + "shape1", + [ + (5,), + ( + 5, + 6, + ), + ], + ) + def test_onehot( + self, + shape1, + ): + if shape1 is None: + shape1 = (15,) + else: + shape1 = (*shape1, 15) + spec = OneHotDiscreteTensorSpec( + n=15, shape=shape1, device="cpu", dtype=torch.long + ) + assert spec == torch.stack(spec.unbind(0), 0) + with pytest.raises(ValueError): + spec.unbind(-1) + + @pytest.mark.parametrize( + "shape1", + [ + (5,), + ( + 5, + 6, + ), + ], + ) + def test_unbounded( + self, + shape1, + ): + if shape1 is None: + shape1 = (15,) + else: + shape1 = (*shape1, 15) + spec = UnboundedContinuousTensorSpec( + shape=shape1, device="cpu", dtype=torch.float64 + ) + assert spec == torch.stack(spec.unbind(0), 0) + assert spec == torch.stack(spec.unbind(-1), -1) + + @pytest.mark.parametrize( + "shape1", + [ + (5,), + ( + 5, + 6, + ), + ], + ) + def test_unboundeddiscrete( + self, + shape1, + ): + if shape1 is None: + shape1 = (15,) + else: + shape1 = (*shape1, 15) + spec = UnboundedDiscreteTensorSpec(shape=shape1, device="cpu", dtype=torch.long) + assert spec == torch.stack(spec.unbind(0), 0) + assert spec == torch.stack(spec.unbind(-1), -1) + + @pytest.mark.parametrize( "shape,stack_dim", [[(), 0], [(2,), 0], [(2,), 1], [(2, 3), 0], [(2, 3), 1], [(2, 3), 2]], diff --git a/torchrl/data/tensor_specs.py b/torchrl/data/tensor_specs.py index cec707d8a82..a3dcc441ccb 100644 --- a/torchrl/data/tensor_specs.py +++ b/torchrl/data/tensor_specs.py @@ -1229,9 +1229,7 @@ def expand(self, *shape): def squeeze(self, dim=None): if self.shape[-1] == 1 and dim in (len(self.shape), -1, None): - raise ValueError( - f"Final dimension of {type(self)} must remain unchanged" - ) + raise ValueError(f"Final dimension of {type(self)} must remain unchanged") shape = _squeezed_shape(self.shape, dim) if shape is None: @@ -1250,9 +1248,7 @@ def squeeze(self, dim=None): def unsqueeze(self, dim: int): if dim in (len(self.shape), -1): - raise ValueError( - f"Final dimension of {type(self)} must remain unchanged" - ) + raise ValueError(f"Final dimension of {type(self)} must remain unchanged") shape = _unsqueezed_shape(self.shape, dim) mask = self.mask @@ -1269,28 +1265,31 @@ def unsqueeze(self, dim: int): def unbind(self, dim: int): if dim in (len(self.shape), -1): - raise ValueError( - f"Final dimension of {type(self)} must remain unchanged" - ) + raise ValueError(f"Final dimension of {type(self)} must remain unchanged") orig_dim = dim if dim < 0: dim = len(self.shape) + dim if dim < 0: - raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + raise ValueError( + f"Cannot unbind along dim {orig_dim} with shape {self.shape}." + ) shape = tuple(s for i, s in enumerate(self.shape) if i != dim) mask = self.mask if mask is not None: mask = mask.unbind(dim) else: mask = (None,) * self.shape[dim] - return tuple(self.__class__( - n=shape[-1], - shape=shape, - device=self.device, - dtype=self.dtype, - use_register=self.use_register, - mask=mask[i], - ) for i in range(self.shape[dim])) + return tuple( + self.__class__( + n=shape[-1], + shape=shape, + device=self.device, + dtype=self.dtype, + use_register=self.use_register, + mask=mask[i], + ) + for i in range(self.shape[dim]) + ) def rand(self, shape=None) -> torch.Tensor: if shape is None: @@ -1617,24 +1616,27 @@ def unsqueeze(self, dim: int): def unbind(self, dim: int): if dim in (len(self.shape), -1): - raise ValueError( - f"Final dimension of {type(self)} must remain unchanged" - ) + raise ValueError(f"Final dimension of {type(self)} must remain unchanged") orig_dim = dim if dim < 0: dim = len(self.shape) + dim if dim < 0: - raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + raise ValueError( + f"Cannot unbind along dim {orig_dim} with shape {self.shape}." + ) shape = tuple(s for i, s in enumerate(self.shape) if i != dim) low = self.space.low.unbind(dim) high = self.space.high.unbind(dim) - return tuple(self.__class__( - low=low[i], - high=high[i], - shape=shape, - device=self.device, - dtype=self.dtype, - ) for i in range(self.shape[dim])) + return tuple( + self.__class__( + low=low[i], + high=high[i], + shape=shape, + device=self.device, + dtype=self.dtype, + ) + for i in range(self.shape[dim]) + ) def rand(self, shape=None) -> torch.Tensor: if shape is None: @@ -1830,18 +1832,24 @@ def __getitem__(self, idx: SHAPE_INDEX_TYPING): """Indexes the current TensorSpec based on the provided index.""" indexed_shape = torch.Size(_shape_indexing(self.shape, idx)) return self.__class__(shape=indexed_shape, device=self.device, dtype=self.dtype) + def unbind(self, dim: int): orig_dim = dim if dim < 0: dim = len(self.shape) + dim if dim < 0: - raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + raise ValueError( + f"Cannot unbind along dim {orig_dim} with shape {self.shape}." + ) shape = tuple(s for i, s in enumerate(self.shape) if i != dim) - return tuple(self.__class__( - shape=shape, - device=self.device, - dtype=self.dtype, - ) for i in range(self.shape[dim])) + return tuple( + self.__class__( + shape=shape, + device=self.device, + dtype=self.dtype, + ) + for i in range(self.shape[dim]) + ) @dataclass(repr=False) @@ -1934,18 +1942,24 @@ def __getitem__(self, idx: SHAPE_INDEX_TYPING): """Indexes the current TensorSpec based on the provided index.""" indexed_shape = torch.Size(_shape_indexing(self.shape, idx)) return self.__class__(shape=indexed_shape, device=self.device, dtype=self.dtype) + def unbind(self, dim: int): orig_dim = dim if dim < 0: dim = len(self.shape) + dim if dim < 0: - raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + raise ValueError( + f"Cannot unbind along dim {orig_dim} with shape {self.shape}." + ) shape = tuple(s for i, s in enumerate(self.shape) if i != dim) - return tuple(self.__class__( - shape=shape, - device=self.device, - dtype=self.dtype, - ) for i in range(self.shape[dim])) + return tuple( + self.__class__( + shape=shape, + device=self.device, + dtype=self.dtype, + ) + for i in range(self.shape[dim]) + ) @dataclass(repr=False) @@ -2238,9 +2252,7 @@ def expand(self, *shape): def squeeze(self, dim=None): if self.shape[-1] == 1 and dim in (len(self.shape), -1, None): - raise ValueError( - f"Final dimension of {type(self)} must remain unchanged" - ) + raise ValueError(f"Final dimension of {type(self)} must remain unchanged") shape = _squeezed_shape(self.shape, dim) if shape is None: @@ -2256,34 +2268,40 @@ def squeeze(self, dim=None): def unsqueeze(self, dim: int): if dim in (len(self.shape), -1): - raise ValueError( - f"Final dimension of {type(self)} must remain unchanged" - ) + raise ValueError(f"Final dimension of {type(self)} must remain unchanged") shape = _unsqueezed_shape(self.shape, dim) mask = self.mask.reshape(shape) if self.mask is not None else None return self.__class__( nvec=self.nvec, shape=shape, device=self.device, dtype=self.dtype, mask=mask ) + def unbind(self, dim: int): if dim in (len(self.shape), -1): - raise ValueError( - f"Final dimension of {type(self)} must remain unchanged" - ) + raise ValueError(f"Final dimension of {type(self)} must remain unchanged") orig_dim = dim if dim < 0: dim = len(self.shape) + dim if dim < 0: - raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + raise ValueError( + f"Cannot unbind along dim {orig_dim} with shape {self.shape}." + ) shape = tuple(s for i, s in enumerate(self.shape) if i != dim) mask = self.mask if mask is None: - mask = (None,)*self.shape[dim] + mask = (None,) * self.shape[dim] else: mask = mask.unbind(dim) - return tuple(self.__class__( - nvec=self.nvec, shape=shape, device=self.device, dtype=self.dtype, mask=mask[i] - ) for i in range(self.shape[dim])) + return tuple( + self.__class__( + nvec=self.nvec, + shape=shape, + device=self.device, + dtype=self.dtype, + mask=mask[i], + ) + for i in range(self.shape[dim]) + ) def __getitem__(self, idx: SHAPE_INDEX_TYPING): """Indexes the current TensorSpec based on the provided index. @@ -2508,25 +2526,31 @@ def unsqueeze(self, dim: int): dtype=self.dtype, mask=mask, ) + def unbind(self, dim: int): orig_dim = dim if dim < 0: dim = len(self.shape) + dim if dim < 0: - raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + raise ValueError( + f"Cannot unbind along dim {orig_dim} with shape {self.shape}." + ) shape = tuple(s for i, s in enumerate(self.shape) if i != dim) mask = self.mask if mask is None: - mask = (None,)*self.shape[dim] + mask = (None,) * self.shape[dim] else: mask = mask.unbind(dim) - return tuple(self.__class__( - n=self.space.n, - shape=shape, - device=self.device, - dtype=self.dtype, - mask=mask[i] - ) for i in range(self.shape[dim])) + return tuple( + self.__class__( + n=self.space.n, + shape=shape, + device=self.device, + dtype=self.dtype, + mask=mask[i], + ) + for i in range(self.shape[dim]) + ) def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> CompositeSpec: if isinstance(dest, torch.dtype): @@ -2614,21 +2638,25 @@ def unsqueeze(self, dim: int): return self.__class__( n=self.shape[-1], shape=shape, device=self.device, dtype=self.dtype ) + def unbind(self, dim: int): - if dim in (len(self.shape)-1, -1): - raise ValueError( - f"Final dimension of {type(self)} must remain unchanged" - ) + if dim in (len(self.shape) - 1, -1): + raise ValueError(f"Final dimension of {type(self)} must remain unchanged") orig_dim = dim if dim < 0: dim = len(self.shape) + dim if dim < 0: - raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + raise ValueError( + f"Cannot unbind along dim {orig_dim} with shape {self.shape}." + ) shape = tuple(s for i, s in enumerate(self.shape) if i != dim) - return tuple(self.__class__( - n=self.shape[-1], shape=shape, device=self.device, dtype=self.dtype - ) for i in range(self.shape[dim])) + return tuple( + self.__class__( + n=self.shape[-1], shape=shape, device=self.device, dtype=self.dtype + ) + for i in range(self.shape[dim]) + ) def to(self, dest: Union[torch.dtype, DEVICE_TYPING]) -> CompositeSpec: if isinstance(dest, torch.dtype): @@ -2944,9 +2972,7 @@ def expand(self, *shape): def squeeze(self, dim: int | None = None): if self.shape[-1] == 1 and dim in (len(self.shape), -1, None): - raise ValueError( - f"Final dimension of {type(self)} must remain unchanged" - ) + raise ValueError(f"Final dimension of {type(self)} must remain unchanged") shape = _squeezed_shape(self.shape, dim) if shape is None: return self @@ -2964,9 +2990,7 @@ def squeeze(self, dim: int | None = None): def unsqueeze(self, dim: int): if dim in (len(self.shape), -1): - raise ValueError( - f"Final dimension of {type(self)} must remain unchanged" - ) + raise ValueError(f"Final dimension of {type(self)} must remain unchanged") shape = _unsqueezed_shape(self.shape, dim) nvec = self.nvec.unsqueeze(dim) mask = self.mask @@ -2979,30 +3003,34 @@ def unsqueeze(self, dim: int): dtype=self.dtype, mask=mask, ) + def unbind(self, dim: int): if dim in (len(self.shape), -1): - raise ValueError( - f"Final dimension of {type(self)} must remain unchanged" - ) + raise ValueError(f"Final dimension of {type(self)} must remain unchanged") orig_dim = dim if dim < 0: dim = len(self.shape) + dim if dim < 0: - raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + raise ValueError( + f"Cannot unbind along dim {orig_dim} with shape {self.shape}." + ) shape = tuple(s for i, s in enumerate(self.shape) if i != dim) mask = self.mask nvec = self.nvec.unbind(dim) if mask is not None: mask = mask.unbind(dim) else: - mask = (None,)*self.shape[dim] - return tuple(self.__class__( - nvec=nvec[i], - shape=shape, - device=self.device, - dtype=self.dtype, - mask=mask[i], - ) for i in range(self.shape[dim])) + mask = (None,) * self.shape[dim] + return tuple( + self.__class__( + nvec=nvec[i], + shape=shape, + device=self.device, + dtype=self.dtype, + mask=mask[i], + ) + for i in range(self.shape[dim]) + ) def __getitem__(self, idx: SHAPE_INDEX_TYPING): """Indexes the current TensorSpec based on the provided index.""" @@ -3654,19 +3682,26 @@ def unsqueeze(self, dim: int): shape=shape, device=device, ) + def unbind(self, dim: int): orig_dim = dim if dim < 0: dim = len(self.shape) + dim if dim < 0: - raise ValueError(f"Cannot unbind along dim {orig_dim} with shape {self.shape}.") + raise ValueError( + f"Cannot unbind along dim {orig_dim} with shape {self.shape}." + ) shape = (s for i, s in enumerate(self.shape) if i != dim) unbound_vals = {key: val.unbind(dim) for key, val in self.items()} return tuple( self.__class__( - {key: val[i] for key, val in unbound_vals.items()}, shape=shape, device=self.device, - ) for i in range(self.shape[dim]) + {key: val[i] for key, val in unbound_vals.items()}, + shape=shape, + device=self.device, + ) + for i in range(self.shape[dim]) ) + def lock_(self, recurse=False): """Locks the CompositeSpec and prevents modification of its content. From 6f124510d0220389562418f07cb225ee535a0465 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Wed, 20 Sep 2023 17:25:14 +0100 Subject: [PATCH 101/148] [BugFix] PettingZoo seeding (#1554) Signed-off-by: Matteo Bettini --- torchrl/envs/libs/pettingzoo.py | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/torchrl/envs/libs/pettingzoo.py b/torchrl/envs/libs/pettingzoo.py index dbbe3dea7c4..57f34b6590a 100644 --- a/torchrl/envs/libs/pettingzoo.py +++ b/torchrl/envs/libs/pettingzoo.py @@ -372,9 +372,9 @@ def _check_kwargs(self, kwargs: Dict): def _init_env(self) -> Optional[int]: # Add info if self.parallel: - _, info_dict = self._reset_parallel() + _, info_dict = self._reset_parallel(seed=self.seed) else: - _, info_dict = self._reset_aec() + _, info_dict = self._reset_aec(seed=self.seed) for group, agents in self.group_map.items(): info_specs = [] @@ -440,8 +440,9 @@ def _init_env(self) -> Optional[int]: self.cached_step_output_zero.update(self.output_spec["full_reward_spec"].zero()) self.cached_step_output_zero.update(self.output_spec["full_done_spec"].zero()) - def _set_seed(self, seed: Optional[int]): + def _set_seed(self, seed: int): self.seed = seed + self.reset(seed=self.seed) def _reset( self, tensordict: Optional[TensorDictBase] = None, **kwargs @@ -449,10 +450,10 @@ def _reset( if self.parallel: # This resets when any is done - observation_dict, info_dict = self._reset_parallel() + observation_dict, info_dict = self._reset_parallel(**kwargs) else: # This resets when all are done - observation_dict, info_dict = self._reset_aec(tensordict) + observation_dict, info_dict = self._reset_aec(tensordict, **kwargs) # We start with zeroed data and fill in the data for alive agents tensordict_out = self.cached_reset_output_zero.clone() @@ -481,7 +482,7 @@ def _reset( return tensordict_out - def _reset_aec(self, tensordict=None) -> Tuple[Dict, Dict]: + def _reset_aec(self, tensordict=None, **kwargs) -> Tuple[Dict, Dict]: all_done = True if tensordict is not None: _resets = [] @@ -500,7 +501,7 @@ def _reset_aec(self, tensordict=None) -> Tuple[Dict, Dict]: break if all_done: - self._env.reset(seed=self.seed) + self._env.reset(**kwargs) observation_dict = { agent: self._env.observe(agent) for agent in self.possible_agents @@ -508,10 +509,8 @@ def _reset_aec(self, tensordict=None) -> Tuple[Dict, Dict]: info_dict = self._env.infos return observation_dict, info_dict - def _reset_parallel( - self, - ) -> Tuple[Dict, Dict]: - return self._env.reset(seed=self.seed) + def _reset_parallel(self, **kwargs) -> Tuple[Dict, Dict]: + return self._env.reset(**kwargs) def _step( self, From 1418bd7a264f1ddd297eb6800c227c6c1698dc19 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Thu, 21 Sep 2023 11:15:56 +0100 Subject: [PATCH 102/148] [BugFix] Fix Dreamer test error (#1558) --- test/test_specs.py | 377 ++----------------------------- torchrl/_utils.py | 2 + torchrl/collectors/collectors.py | 2 +- torchrl/objectives/dreamer.py | 2 +- 4 files changed, 22 insertions(+), 361 deletions(-) diff --git a/test/test_specs.py b/test/test_specs.py index 469a6425c8f..1f1dbb8b8aa 100644 --- a/test/test_specs.py +++ b/test/test_specs.py @@ -1215,14 +1215,7 @@ def test_ndbounded_shape(self): class TestExpand: - @pytest.mark.parametrize( - "shape1", - [ - None, - (4,), - (5, 4), - ], - ) + @pytest.mark.parametrize("shape1", [None, (4,), (5, 4)]) @pytest.mark.parametrize("shape2", [(), (10,)]) def test_binary(self, shape1, shape2): spec = BinaryDiscreteTensorSpec( @@ -1344,14 +1337,7 @@ def test_composite(self): assert new_spec["spec7"].shape == torch.Size([4, *batch_size, 9]) assert new_spec["spec8"].shape == torch.Size([4, *batch_size, 9]) - @pytest.mark.parametrize( - "shape1", - [ - None, - (), - (5,), - ], - ) + @pytest.mark.parametrize("shape1", [None, (), (5,)]) @pytest.mark.parametrize("shape2", [(), (10,)]) def test_discrete(self, shape1, shape2): spec = DiscreteTensorSpec(n=4, shape=shape1, device="cpu", dtype=torch.long) @@ -1373,14 +1359,7 @@ def test_discrete(self, shape1, shape2): assert spec2.rand().shape == spec2.shape assert spec2.zero().shape == spec2.shape - @pytest.mark.parametrize( - "shape1", - [ - None, - (), - (5,), - ], - ) + @pytest.mark.parametrize("shape1", [None, (), (5,)]) @pytest.mark.parametrize("shape2", [(), (10,)]) def test_multidiscrete(self, shape1, shape2): if shape1 is None: @@ -1408,14 +1387,7 @@ def test_multidiscrete(self, shape1, shape2): assert spec2.rand().shape == spec2.shape assert spec2.zero().shape == spec2.shape - @pytest.mark.parametrize( - "shape1", - [ - None, - (), - (5,), - ], - ) + @pytest.mark.parametrize("shape1", [None, (), (5,)]) @pytest.mark.parametrize("shape2", [(), (10,)]) def test_multionehot(self, shape1, shape2): if shape1 is None: @@ -1443,14 +1415,7 @@ def test_multionehot(self, shape1, shape2): assert spec2.rand().shape == spec2.shape assert spec2.zero().shape == spec2.shape - @pytest.mark.parametrize( - "shape1", - [ - None, - (), - (5,), - ], - ) + @pytest.mark.parametrize("shape1", [None, (), (5,)]) @pytest.mark.parametrize("shape2", [(), (10,)]) def test_onehot(self, shape1, shape2): if shape1 is None: @@ -1478,14 +1443,7 @@ def test_onehot(self, shape1, shape2): assert spec2.rand().shape == spec2.shape assert spec2.zero().shape == spec2.shape - @pytest.mark.parametrize( - "shape1", - [ - None, - (), - (5,), - ], - ) + @pytest.mark.parametrize("shape1", [None, (), (5,)]) @pytest.mark.parametrize("shape2", [(), (10,)]) def test_unbounded(self, shape1, shape2): if shape1 is None: @@ -1513,14 +1471,7 @@ def test_unbounded(self, shape1, shape2): assert spec2.rand().shape == spec2.shape assert spec2.zero().shape == spec2.shape - @pytest.mark.parametrize( - "shape1", - [ - None, - (), - (5,), - ], - ) + @pytest.mark.parametrize("shape1", [None, (), (5,)]) @pytest.mark.parametrize("shape2", [(), (10,)]) def test_unboundeddiscrete(self, shape1, shape2): if shape1 is None: @@ -1638,14 +1589,7 @@ def test_composite(self): assert item == spec_clone[key], key assert spec == spec.clone() - @pytest.mark.parametrize( - "shape1", - [ - None, - (), - (5,), - ], - ) + @pytest.mark.parametrize("shape1", [None, (), (5,)]) def test_discrete( self, shape1, @@ -1654,14 +1598,7 @@ def test_discrete( assert spec == spec.clone() assert spec is not spec.clone() - @pytest.mark.parametrize( - "shape1", - [ - None, - (), - (5,), - ], - ) + @pytest.mark.parametrize("shape1", [None, (), (5,)]) def test_multidiscrete( self, shape1, @@ -1676,14 +1613,7 @@ def test_multidiscrete( assert spec == spec.clone() assert spec is not spec.clone() - @pytest.mark.parametrize( - "shape1", - [ - None, - (), - (5,), - ], - ) + @pytest.mark.parametrize("shape1", [None, (), (5,)]) def test_multionehot( self, shape1, @@ -1698,14 +1628,7 @@ def test_multionehot( assert spec == spec.clone() assert spec is not spec.clone() - @pytest.mark.parametrize( - "shape1", - [ - None, - (), - (5,), - ], - ) + @pytest.mark.parametrize("shape1", [None, (), (5,)]) def test_onehot( self, shape1, @@ -1720,14 +1643,7 @@ def test_onehot( assert spec == spec.clone() assert spec is not spec.clone() - @pytest.mark.parametrize( - "shape1", - [ - None, - (), - (5,), - ], - ) + @pytest.mark.parametrize("shape1", [None, (), (5,)]) def test_unbounded( self, shape1, @@ -1742,14 +1658,7 @@ def test_unbounded( assert spec == spec.clone() assert spec is not spec.clone() - @pytest.mark.parametrize( - "shape1", - [ - None, - (), - (5,), - ], - ) + @pytest.mark.parametrize("shape1", [None, (), (5,)]) def test_unboundeddiscrete( self, shape1, @@ -1762,211 +1671,6 @@ def test_unboundeddiscrete( assert spec == spec.clone() assert spec is not spec.clone() -class TestUnbind: - @pytest.mark.parametrize( - "shape1", - [ - (5, 4) - ] - ) - def test_binary(self, shape1): - spec = BinaryDiscreteTensorSpec( - n=4, shape=shape1, device="cpu", dtype=torch.bool - ) - assert spec == torch.stack(spec.unbind(0), 0) - with pytest.raises(ValueError): - spec.unbind(-1) - - @pytest.mark.parametrize( - "shape1,mini,maxi", - [ - [(10,), -torch.ones([]), torch.ones([])], - [None, -torch.ones([10]), torch.ones([])], - [None, -torch.ones([]), torch.ones([10])], - [(10,), -torch.ones([]), torch.ones([10])], - [(10,), -torch.ones([10]), torch.ones([])], - [(10,), -torch.ones([10]), torch.ones([10])], - ], - ) - def test_bounded(self, shape1, mini, maxi): - spec = BoundedTensorSpec( - mini, maxi, shape=shape1, device="cpu", dtype=torch.bool - ) - assert spec == torch.stack(spec.unbind(0), 0) - with pytest.raises(ValueError): - spec.unbind(-1) - - def test_composite(self): - batch_size = (5,) - spec1 = BoundedTensorSpec( - -torch.ones([*batch_size, 10]), - torch.ones([*batch_size, 10]), - shape=( - *batch_size, - 10, - ), - device="cpu", - dtype=torch.bool, - ) - spec2 = BinaryDiscreteTensorSpec( - n=4, shape=(*batch_size, 4), device="cpu", dtype=torch.bool - ) - spec3 = DiscreteTensorSpec( - n=4, shape=batch_size, device="cpu", dtype=torch.long - ) - spec4 = MultiDiscreteTensorSpec( - nvec=(4, 5, 6), shape=(*batch_size, 3), device="cpu", dtype=torch.long - ) - spec5 = MultiOneHotDiscreteTensorSpec( - nvec=(4, 5, 6), shape=(*batch_size, 15), device="cpu", dtype=torch.long - ) - spec6 = OneHotDiscreteTensorSpec( - n=15, shape=(*batch_size, 15), device="cpu", dtype=torch.long - ) - spec7 = UnboundedContinuousTensorSpec( - shape=(*batch_size, 9), - device="cpu", - dtype=torch.float64, - ) - spec8 = UnboundedDiscreteTensorSpec( - shape=(*batch_size, 9), - device="cpu", - dtype=torch.long, - ) - spec = CompositeSpec( - spec1=spec1, - spec2=spec2, - spec3=spec3, - spec4=spec4, - spec5=spec5, - spec6=spec6, - spec7=spec7, - spec8=spec8, - shape=batch_size, - ) - assert spec == torch.stack(spec.unbind(0), 0) - assert spec == torch.stack(spec.unbind(-1), -1) - - @pytest.mark.parametrize( - "shape1", - [ - (5,), - (5,6) - ] - ) - def test_discrete( - self, - shape1, - ): - spec = DiscreteTensorSpec(n=4, shape=shape1, device="cpu", dtype=torch.long) - assert spec == torch.stack(spec.unbind(0), 0) - assert spec == torch.stack(spec.unbind(-1), -1) - - @pytest.mark.parametrize( - "shape1", - [ - (5,), - (5,6,) - ] - ) - def test_multidiscrete( - self, - shape1, - ): - if shape1 is None: - shape1 = (3,) - else: - shape1 = (*shape1, 3) - spec = MultiDiscreteTensorSpec( - nvec=(4, 5, 6), shape=shape1, device="cpu", dtype=torch.long - ) - assert spec == torch.stack(spec.unbind(0), 0) - with pytest.raises(ValueError): - spec.unbind(-1) - - @pytest.mark.parametrize( - "shape1", - [ - (5,), - (5,6,) - ] - ) - def test_multionehot( - self, - shape1, - ): - if shape1 is None: - shape1 = (15,) - else: - shape1 = (*shape1, 15) - spec = MultiOneHotDiscreteTensorSpec( - nvec=(4, 5, 6), shape=shape1, device="cpu", dtype=torch.long - ) - assert spec == torch.stack(spec.unbind(0), 0) - with pytest.raises(ValueError): - spec.unbind(-1) - - @pytest.mark.parametrize( - "shape1", - [ - (5,), - (5,6,) - ], - ) - def test_onehot( - self, - shape1, - ): - if shape1 is None: - shape1 = (15,) - else: - shape1 = (*shape1, 15) - spec = OneHotDiscreteTensorSpec( - n=15, shape=shape1, device="cpu", dtype=torch.long - ) - assert spec == torch.stack(spec.unbind(0), 0) - with pytest.raises(ValueError): - spec.unbind(-1) - - @pytest.mark.parametrize( - "shape1", - [ - (5,), - (5,6,) - ] - ) - def test_unbounded( - self, - shape1, - ): - if shape1 is None: - shape1 = (15,) - else: - shape1 = (*shape1, 15) - spec = UnboundedContinuousTensorSpec( - shape=shape1, device="cpu", dtype=torch.float64 - ) - assert spec == torch.stack(spec.unbind(0), 0) - assert spec == torch.stack(spec.unbind(-1), -1) - - @pytest.mark.parametrize( - "shape1", - [ - (5,), - (5,6,) - ] - ) - def test_unboundeddiscrete( - self, - shape1, - ): - if shape1 is None: - shape1 = (15,) - else: - shape1 = (*shape1, 15) - spec = UnboundedDiscreteTensorSpec(shape=shape1, device="cpu", dtype=torch.long) - assert spec == torch.stack(spec.unbind(0), 0) - assert spec == torch.stack(spec.unbind(-1), -1) class TestUnbind: @pytest.mark.parametrize("shape1", [(5, 4)]) @@ -2057,16 +1761,7 @@ def test_discrete( assert spec == torch.stack(spec.unbind(0), 0) assert spec == torch.stack(spec.unbind(-1), -1) - @pytest.mark.parametrize( - "shape1", - [ - (5,), - ( - 5, - 6, - ), - ], - ) + @pytest.mark.parametrize("shape1", [(5,), (5, 6)]) def test_multidiscrete( self, shape1, @@ -2082,16 +1777,7 @@ def test_multidiscrete( with pytest.raises(ValueError): spec.unbind(-1) - @pytest.mark.parametrize( - "shape1", - [ - (5,), - ( - 5, - 6, - ), - ], - ) + @pytest.mark.parametrize("shape1", [(5,), (5, 6)]) def test_multionehot( self, shape1, @@ -2107,16 +1793,7 @@ def test_multionehot( with pytest.raises(ValueError): spec.unbind(-1) - @pytest.mark.parametrize( - "shape1", - [ - (5,), - ( - 5, - 6, - ), - ], - ) + @pytest.mark.parametrize("shape1", [(5,), (5, 6)]) def test_onehot( self, shape1, @@ -2132,16 +1809,7 @@ def test_onehot( with pytest.raises(ValueError): spec.unbind(-1) - @pytest.mark.parametrize( - "shape1", - [ - (5,), - ( - 5, - 6, - ), - ], - ) + @pytest.mark.parametrize("shape1", [(5,), (5, 6)]) def test_unbounded( self, shape1, @@ -2156,16 +1824,7 @@ def test_unbounded( assert spec == torch.stack(spec.unbind(0), 0) assert spec == torch.stack(spec.unbind(-1), -1) - @pytest.mark.parametrize( - "shape1", - [ - (5,), - ( - 5, - 6, - ), - ], - ) + @pytest.mark.parametrize("shape1", [(5,), (5, 6)]) def test_unboundeddiscrete( self, shape1, diff --git a/torchrl/_utils.py b/torchrl/_utils.py index 48670d3e8de..01413ba262a 100644 --- a/torchrl/_utils.py +++ b/torchrl/_utils.py @@ -535,6 +535,7 @@ def get_trace(): class _ProcessNoWarn(mp.Process): """A private Process class that shuts down warnings on the subprocess.""" + @wraps(mp.Process.__init__) def __init__(self, *args, **kwargs): import torchrl @@ -546,6 +547,7 @@ def __init__(self, *args, **kwargs): def run(self, *args, **kwargs): if self.filter_warnings_subprocess: import warnings + with warnings.catch_warnings(): warnings.simplefilter("ignore") return mp.Process.run(self, *args, **kwargs) diff --git a/torchrl/collectors/collectors.py b/torchrl/collectors/collectors.py index 16a50df1c0f..90b42df08c3 100644 --- a/torchrl/collectors/collectors.py +++ b/torchrl/collectors/collectors.py @@ -30,8 +30,8 @@ from torchrl._utils import ( _check_for_faulty_process, - accept_remote_rref_udf_invocation, _ProcessNoWarn, + accept_remote_rref_udf_invocation, prod, RL_WARNINGS, VERBOSE, diff --git a/torchrl/objectives/dreamer.py b/torchrl/objectives/dreamer.py index a9e546a72ec..c4e02ff4a5a 100644 --- a/torchrl/objectives/dreamer.py +++ b/torchrl/objectives/dreamer.py @@ -286,7 +286,7 @@ def forward(self, tensordict: TensorDict) -> Tuple[TensorDict, TensorDict]: if self.discount_loss: gamma = self.value_estimator.gamma.to(tensordict.device) - discount = gamma.expand(lambda_target.shape) + discount = gamma.expand(lambda_target.shape).clone() discount[..., 0, :] = 1 discount = discount.cumprod(dim=-2) actor_loss = -(lambda_target * discount).sum((-2, -1)).mean() From ae370e98428410b0cf33f43d7804b2ffd201d788 Mon Sep 17 00:00:00 2001 From: Albert Bou Date: Thu, 21 Sep 2023 14:41:32 +0200 Subject: [PATCH 103/148] [Algorithm] Update PPO examples (#1495) Co-authored-by: vmoens --- .../linux_examples/scripts/environment.yml | 2 + .../linux_examples/scripts/run_test.sh | 33 +- examples/ppo/README.md | 29 ++ examples/ppo/config.yaml | 46 -- examples/ppo/config_atari.yaml | 36 ++ examples/ppo/config_example2.yaml | 43 -- examples/ppo/config_mujoco.yaml | 33 ++ examples/ppo/ppo.py | 182 ------- examples/ppo/ppo_atari.py | 228 +++++++++ examples/ppo/ppo_atari_pong.png | Bin 1086291 -> 0 bytes examples/ppo/ppo_mujoco.py | 213 ++++++++ examples/ppo/ppo_mujoco_halfcheetah.png | Bin 911008 -> 0 bytes examples/ppo/training_curves.md | 13 - examples/ppo/utils.py | 473 ------------------ examples/ppo/utils_atari.py | 238 +++++++++ examples/ppo/utils_mujoco.py | 141 ++++++ 16 files changed, 932 insertions(+), 778 deletions(-) create mode 100644 examples/ppo/README.md delete mode 100644 examples/ppo/config.yaml create mode 100644 examples/ppo/config_atari.yaml delete mode 100644 examples/ppo/config_example2.yaml create mode 100644 examples/ppo/config_mujoco.yaml delete mode 100644 examples/ppo/ppo.py create mode 100644 examples/ppo/ppo_atari.py delete mode 100644 examples/ppo/ppo_atari_pong.png create mode 100644 examples/ppo/ppo_mujoco.py delete mode 100644 examples/ppo/ppo_mujoco_halfcheetah.png delete mode 100644 examples/ppo/training_curves.md delete mode 100644 examples/ppo/utils.py create mode 100644 examples/ppo/utils_atari.py create mode 100644 examples/ppo/utils_mujoco.py diff --git a/.github/unittest/linux_examples/scripts/environment.yml b/.github/unittest/linux_examples/scripts/environment.yml index ef9251e96c9..688921f826a 100644 --- a/.github/unittest/linux_examples/scripts/environment.yml +++ b/.github/unittest/linux_examples/scripts/environment.yml @@ -27,3 +27,5 @@ dependencies: - coverage - vmas - transformers + - gym[atari] + - gym[accept-rom-license] diff --git a/.github/unittest/linux_examples/scripts/run_test.sh b/.github/unittest/linux_examples/scripts/run_test.sh index d81e90fdd42..f435d3fc732 100755 --- a/.github/unittest/linux_examples/scripts/run_test.sh +++ b/.github/unittest/linux_examples/scripts/run_test.sh @@ -48,18 +48,21 @@ python .github/unittest/helpers/coverage_run_parallel.py examples/decision_trans # ==================================================================================== # # ================================ Gymnasium ========================================= # -python .github/unittest/helpers/coverage_run_parallel.py examples/ppo/ppo.py \ - env.num_envs=1 \ - env.device=cuda:0 \ - collector.total_frames=48 \ - collector.frames_per_batch=16 \ - collector.collector_device=cuda:0 \ - optim.device=cuda:0 \ +python .github/unittest/helpers/coverage_run_parallel.py examples/ppo/ppo_mujoco.py \ + env.env_name=HalfCheetah-v4 \ + collector.total_frames=40 \ + collector.frames_per_batch=20 \ loss.mini_batch_size=10 \ loss.ppo_epochs=1 \ logger.backend= \ - logger.log_interval=4 \ - optim.lr_scheduler=False + logger.test_interval=40 +python .github/unittest/helpers/coverage_run_parallel.py examples/ppo/ppo_atari.py \ + collector.total_frames=80 \ + collector.frames_per_batch=20 \ + loss.mini_batch_size=20 \ + loss.ppo_epochs=1 \ + logger.backend= \ + logger.test_interval=40 python .github/unittest/helpers/coverage_run_parallel.py examples/ddpg/ddpg.py \ collector.total_frames=48 \ collector.init_random_frames=10 \ @@ -208,18 +211,6 @@ python .github/unittest/helpers/coverage_run_parallel.py examples/dqn/dqn.py \ record_video=True \ record_frames=4 \ buffer_size=120 -python .github/unittest/helpers/coverage_run_parallel.py examples/ppo/ppo.py \ - env.num_envs=1 \ - env.device=cuda:0 \ - collector.total_frames=48 \ - collector.frames_per_batch=16 \ - collector.collector_device=cuda:0 \ - optim.device=cuda:0 \ - loss.mini_batch_size=10 \ - loss.ppo_epochs=1 \ - logger.backend= \ - logger.log_interval=4 \ - optim.lr_scheduler=False python .github/unittest/helpers/coverage_run_parallel.py examples/redq/redq.py \ total_frames=48 \ init_random_frames=10 \ diff --git a/examples/ppo/README.md b/examples/ppo/README.md new file mode 100644 index 00000000000..7d27f746e2a --- /dev/null +++ b/examples/ppo/README.md @@ -0,0 +1,29 @@ +## Reproducing Proximal Policy Optimization (PPO) Algorithm Results + +This repository contains scripts that enable training agents using the Proximal Policy Optimization (PPO) Algorithm on MuJoCo and Atari environments. We follow the original paper [Proximal Policy Optimization Algorithms](https://arxiv.org/abs/1707.06347) by Schulman et al. (2017) to implement the PPO algorithm but introduce the improvement of computing the Generalised Advantage Estimator (GAE) at every epoch. + + +## Examples Structure + +Please note that each example is independent of each other for the sake of simplicity. Each example contains the following files: + +1. **Main Script:** The definition of algorithm components and the training loop can be found in the main script (e.g. ppo_atari.py). + +2. **Utils File:** A utility file is provided to contain various helper functions, generally to create the environment and the models (e.g. utils_atari.py). + +3. **Configuration File:** This file includes default hyperparameters specified in the original paper. Users can modify these hyperparameters to customize their experiments (e.g. config_atari.yaml). + + +## Running the Examples + +You can execute the PPO algorithm on Atari environments by running the following command: + +```bash +python ppo_atari.py +``` + +You can execute the PPO algorithm on MuJoCo environments by running the following command: + +```bash +python ppo_mujoco.py +``` diff --git a/examples/ppo/config.yaml b/examples/ppo/config.yaml deleted file mode 100644 index d7840906c92..00000000000 --- a/examples/ppo/config.yaml +++ /dev/null @@ -1,46 +0,0 @@ -# task and env -defaults: - - hydra/job_logging: disabled - -env: - env_name: PongNoFrameskip-v4 - env_task: "" - env_library: gym - frame_skip: 4 - num_envs: 8 - noop: 1 - reward_scaling: 1.0 - from_pixels: True - n_samples_stats: 1000 - device: cuda:0 - -# collector -collector: - frames_per_batch: 4096 - total_frames: 40_000_000 - collector_device: cuda:0 # cpu - max_frames_per_traj: -1 - -# logger -logger: - backend: wandb - exp_name: ppo_pong_gym - log_interval: 10000 - -# Optim -optim: - device: cuda:0 - lr: 2.5e-4 - weight_decay: 0.0 - lr_scheduler: True - -# loss -loss: - gamma: 0.99 - mini_batch_size: 1024 - ppo_epochs: 10 - gae_lamdda: 0.95 - clip_epsilon: 0.1 - critic_coef: 0.5 - entropy_coef: 0.01 - loss_critic_type: l2 diff --git a/examples/ppo/config_atari.yaml b/examples/ppo/config_atari.yaml new file mode 100644 index 00000000000..6957fd9bddd --- /dev/null +++ b/examples/ppo/config_atari.yaml @@ -0,0 +1,36 @@ +# Environment +env: + env_name: PongNoFrameskip-v4 + num_envs: 8 + +# collector +collector: + frames_per_batch: 4096 + total_frames: 40_000_000 + +# logger +logger: + backend: wandb + exp_name: Atari_Schulman17 + test_interval: 40_000_000 + num_test_episodes: 3 + +# Optim +optim: + lr: 2.5e-4 + eps: 1.0e-6 + weight_decay: 0.0 + max_grad_norm: 0.5 + anneal_lr: True + +# loss +loss: + gamma: 0.99 + mini_batch_size: 1024 + ppo_epochs: 3 + gae_lambda: 0.95 + clip_epsilon: 0.1 + anneal_clip_epsilon: True + critic_coef: 1.0 + entropy_coef: 0.01 + loss_critic_type: l2 diff --git a/examples/ppo/config_example2.yaml b/examples/ppo/config_example2.yaml deleted file mode 100644 index 9d06c8a82ee..00000000000 --- a/examples/ppo/config_example2.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# task and env -env: - env_name: HalfCheetah-v4 - env_task: "" - env_library: gym - frame_skip: 1 - num_envs: 1 - noop: 1 - reward_scaling: 1.0 - from_pixels: False - n_samples_stats: 3 - device: cuda - -# collector -collector: - frames_per_batch: 2048 - total_frames: 1_000_000 - collector_device: cuda # cpu - max_frames_per_traj: -1 - -# logger -logger: - backend: wandb - exp_name: ppo_halfcheetah_gym - log_interval: 10000 - -# Optim -optim: - device: cuda - lr: 3e-4 - weight_decay: 1e-4 - lr_scheduler: False - -# loss -loss: - gamma: 0.99 - mini_batch_size: 64 - ppo_epochs: 10 - gae_lamdda: 0.95 - clip_epsilon: 0.2 - critic_coef: 0.5 - entropy_coef: 0.0 - loss_critic_type: l2 diff --git a/examples/ppo/config_mujoco.yaml b/examples/ppo/config_mujoco.yaml new file mode 100644 index 00000000000..1272c1f4bff --- /dev/null +++ b/examples/ppo/config_mujoco.yaml @@ -0,0 +1,33 @@ +# task and env +env: + env_name: HalfCheetah-v3 + +# collector +collector: + frames_per_batch: 2048 + total_frames: 1_000_000 + +# logger +logger: + backend: wandb + exp_name: Mujoco_Schulman17 + test_interval: 1_000_000 + num_test_episodes: 5 + +# Optim +optim: + lr: 3e-4 + weight_decay: 0.0 + anneal_lr: False + +# loss +loss: + gamma: 0.99 + mini_batch_size: 64 + ppo_epochs: 10 + gae_lambda: 0.95 + clip_epsilon: 0.2 + anneal_clip_epsilon: False + critic_coef: 0.25 + entropy_coef: 0.0 + loss_critic_type: l2 diff --git a/examples/ppo/ppo.py b/examples/ppo/ppo.py deleted file mode 100644 index 7f532bc0c4d..00000000000 --- a/examples/ppo/ppo.py +++ /dev/null @@ -1,182 +0,0 @@ -# Copyright (c) Meta Platforms, Inc. and affiliates. -# -# This source code is licensed under the MIT license found in the -# LICENSE file in the root directory of this source tree. -"""PPO Example. - -This is a self-contained example of a PPO training script. - -Both state and pixel-based environments are supported. - -The helper functions are coded in the utils.py associated with this script. -""" -import hydra - - -@hydra.main(config_path=".", config_name="config", version_base="1.1") -def main(cfg: "DictConfig"): # noqa: F821 - - import torch - import tqdm - from tensordict import TensorDict - from torchrl.envs.utils import ExplorationType, set_exploration_type - from utils import ( - make_collector, - make_data_buffer, - make_logger, - make_loss, - make_optim, - make_ppo_models, - make_test_env, - ) - - # Correct for frame_skip - cfg.collector.total_frames = cfg.collector.total_frames // cfg.env.frame_skip - cfg.collector.frames_per_batch = ( - cfg.collector.frames_per_batch // cfg.env.frame_skip - ) - mini_batch_size = cfg.loss.mini_batch_size = ( - cfg.loss.mini_batch_size // cfg.env.frame_skip - ) - - model_device = cfg.optim.device - actor, critic, critic_head = make_ppo_models(cfg) - - collector, state_dict = make_collector(cfg, policy=actor) - data_buffer = make_data_buffer(cfg) - loss_module, adv_module = make_loss( - cfg.loss, - actor_network=actor, - value_network=critic, - value_head=critic_head, - ) - optim = make_optim(cfg.optim, loss_module) - - batch_size = cfg.collector.total_frames * cfg.env.num_envs - num_mini_batches = batch_size // mini_batch_size - total_network_updates = ( - (cfg.collector.total_frames // batch_size) - * cfg.loss.ppo_epochs - * num_mini_batches - ) - - scheduler = None - if cfg.optim.lr_scheduler: - scheduler = torch.optim.lr_scheduler.LinearLR( - optim, total_iters=total_network_updates, start_factor=1.0, end_factor=0.1 - ) - - logger = None - if cfg.logger.backend: - logger = make_logger(cfg.logger) - test_env = make_test_env(cfg.env, state_dict) - record_interval = cfg.logger.log_interval - pbar = tqdm.tqdm(total=cfg.collector.total_frames) - collected_frames = 0 - - # Main loop - r0 = None - l0 = None - frame_skip = cfg.env.frame_skip - ppo_epochs = cfg.loss.ppo_epochs - total_done = 0 - for data in collector: - - frames_in_batch = data.numel() - total_done += data.get(("next", "done")).sum() - collected_frames += frames_in_batch * frame_skip - pbar.update(data.numel()) - - # Log end-of-episode accumulated rewards for training - episode_rewards = data["next", "episode_reward"][data["next", "done"]] - if logger is not None and len(episode_rewards) > 0: - logger.log_scalar( - "reward_training", episode_rewards.mean().item(), collected_frames - ) - - losses = TensorDict( - {}, batch_size=[ppo_epochs, -(frames_in_batch // -mini_batch_size)] - ) - for j in range(ppo_epochs): - # Compute GAE - with torch.no_grad(): - data = adv_module(data.to(model_device)).cpu() - - data_reshape = data.reshape(-1) - # Update the data buffer - data_buffer.extend(data_reshape) - - for i, batch in enumerate(data_buffer): - - # Get a data batch - batch = batch.to(model_device) - - # Forward pass PPO loss - loss = loss_module(batch) - losses[j, i] = loss.detach() - - loss_sum = ( - loss["loss_critic"] + loss["loss_objective"] + loss["loss_entropy"] - ) - - # Backward pass - loss_sum.backward() - grad_norm = torch.nn.utils.clip_grad_norm_( - list(loss_module.parameters()), max_norm=0.5 - ) - losses[j, i]["grad_norm"] = grad_norm - - optim.step() - if scheduler is not None: - scheduler.step() - optim.zero_grad() - - # Logging - if r0 is None: - r0 = data["next", "reward"].mean().item() - if l0 is None: - l0 = loss_sum.item() - pbar.set_description( - f"loss: {loss_sum.item(): 4.4f} (init: {l0: 4.4f}), reward: {data['next', 'reward'].mean(): 4.4f} (init={r0: 4.4f})" - ) - if i + 1 != -(frames_in_batch // -mini_batch_size): - print( - f"Should have had {- (frames_in_batch // -mini_batch_size)} iters but had {i}." - ) - losses = losses.apply(lambda x: x.float().mean(), batch_size=[]) - if logger is not None: - for key, value in losses.items(): - logger.log_scalar(key, value.item(), collected_frames) - logger.log_scalar("total_done", total_done, collected_frames) - - collector.update_policy_weights_() - - # Test current policy - if ( - logger is not None - and (collected_frames - frames_in_batch) // record_interval - < collected_frames // record_interval - ): - - with torch.no_grad(), set_exploration_type(ExplorationType.MODE): - test_env.eval() - actor.eval() - # Generate a complete episode - td_test = test_env.rollout( - policy=actor, - max_steps=10_000_000, - auto_reset=True, - auto_cast_to_device=True, - break_when_any_done=True, - ).clone() - logger.log_scalar( - "reward_testing", - td_test["next", "reward"].sum().item(), - collected_frames, - ) - actor.train() - del td_test - - -if __name__ == "__main__": - main() diff --git a/examples/ppo/ppo_atari.py b/examples/ppo/ppo_atari.py new file mode 100644 index 00000000000..351d0af0ae8 --- /dev/null +++ b/examples/ppo/ppo_atari.py @@ -0,0 +1,228 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +""" +This script reproduces the Proximal Policy Optimization (PPO) Algorithm +results from Schulman et al. 2017 for the on Atari Environments. +""" + +import hydra + + +@hydra.main(config_path=".", config_name="config_atari", version_base="1.1") +def main(cfg: "DictConfig"): # noqa: F821 + + import time + + import torch.optim + import tqdm + + from tensordict import TensorDict + from torchrl.collectors import SyncDataCollector + from torchrl.data import LazyMemmapStorage, TensorDictReplayBuffer + from torchrl.data.replay_buffers.samplers import SamplerWithoutReplacement + from torchrl.envs import ExplorationType, set_exploration_type + from torchrl.objectives import ClipPPOLoss + from torchrl.objectives.value.advantages import GAE + from torchrl.record.loggers import generate_exp_name, get_logger + from utils_atari import eval_model, make_parallel_env, make_ppo_models + + device = "cpu" if not torch.cuda.device_count() else "cuda" + + # Correct for frame_skip + frame_skip = 4 + total_frames = cfg.collector.total_frames // frame_skip + frames_per_batch = cfg.collector.frames_per_batch // frame_skip + mini_batch_size = cfg.loss.mini_batch_size // frame_skip + test_interval = cfg.logger.test_interval // frame_skip + + # Create models (check utils_atari.py) + actor, critic = make_ppo_models(cfg.env.env_name) + actor, critic = actor.to(device), critic.to(device) + + # Create collector + collector = SyncDataCollector( + create_env_fn=make_parallel_env(cfg.env.env_name, cfg.env.num_envs, device), + policy=actor, + frames_per_batch=frames_per_batch, + total_frames=total_frames, + device=device, + storing_device=device, + max_frames_per_traj=-1, + ) + + # Create data buffer + sampler = SamplerWithoutReplacement() + data_buffer = TensorDictReplayBuffer( + storage=LazyMemmapStorage(frames_per_batch), + sampler=sampler, + batch_size=mini_batch_size, + ) + + # Create loss and adv modules + adv_module = GAE( + gamma=cfg.loss.gamma, + lmbda=cfg.loss.gae_lambda, + value_network=critic, + average_gae=False, + ) + loss_module = ClipPPOLoss( + actor=actor, + critic=critic, + clip_epsilon=cfg.loss.clip_epsilon, + loss_critic_type=cfg.loss.loss_critic_type, + entropy_coef=cfg.loss.entropy_coef, + critic_coef=cfg.loss.critic_coef, + normalize_advantage=True, + ) + + # Create optimizer + optim = torch.optim.Adam( + loss_module.parameters(), + lr=cfg.optim.lr, + weight_decay=cfg.optim.weight_decay, + eps=cfg.optim.eps, + ) + + # Create logger + logger = None + if cfg.logger.backend: + exp_name = generate_exp_name("PPO", f"{cfg.logger.exp_name}_{cfg.env.env_name}") + logger = get_logger( + cfg.logger.backend, logger_name="ppo", experiment_name=exp_name + ) + + # Create test environment + test_env = make_parallel_env(cfg.env.env_name, 1, device, is_test=True) + test_env.eval() + + # Main loop + collected_frames = 0 + num_network_updates = 0 + start_time = time.time() + pbar = tqdm.tqdm(total=total_frames) + num_mini_batches = frames_per_batch // mini_batch_size + total_network_updates = ( + (total_frames // frames_per_batch) * cfg.loss.ppo_epochs * num_mini_batches + ) + + sampling_start = time.time() + for i, data in enumerate(collector): + + log_info = {} + sampling_time = time.time() - sampling_start + frames_in_batch = data.numel() + collected_frames += frames_in_batch * frame_skip + pbar.update(data.numel()) + + # Get training rewards and episode lengths + episode_rewards = data["next", "episode_reward"][data["next", "done"]] + if len(episode_rewards) > 0: + episode_length = data["next", "step_count"][data["next", "done"]] + log_info.update( + { + "train/reward": episode_rewards.mean().item(), + "train/episode_length": episode_length.sum().item() + / len(episode_length), + } + ) + + # Apply episodic end of life + data["done"].copy_(data["end_of_life"]) + data["next", "done"].copy_(data["next", "end_of_life"]) + + losses = TensorDict({}, batch_size=[cfg.loss.ppo_epochs, num_mini_batches]) + training_start = time.time() + for j in range(cfg.loss.ppo_epochs): + + # Compute GAE + with torch.no_grad(): + data = adv_module(data) + data_reshape = data.reshape(-1) + + # Update the data buffer + data_buffer.extend(data_reshape) + + for k, batch in enumerate(data_buffer): + + # Linearly decrease the learning rate and clip epsilon + alpha = 1.0 + if cfg.optim.anneal_lr: + alpha = 1 - (num_network_updates / total_network_updates) + for group in optim.param_groups: + group["lr"] = cfg.optim.lr * alpha + if cfg.loss.anneal_clip_epsilon: + loss_module.clip_epsilon.copy_(cfg.loss.clip_epsilon * alpha) + num_network_updates += 1 + + # Get a data batch + batch = batch.to(device) + + # Forward pass PPO loss + loss = loss_module(batch) + losses[j, k] = loss.select( + "loss_critic", "loss_entropy", "loss_objective" + ).detach() + loss_sum = ( + loss["loss_critic"] + loss["loss_objective"] + loss["loss_entropy"] + ) + + # Backward pass + loss_sum.backward() + torch.nn.utils.clip_grad_norm_( + list(loss_module.parameters()), max_norm=cfg.optim.max_grad_norm + ) + + # Update the networks + optim.step() + optim.zero_grad() + + # Get training losses and times + training_time = time.time() - training_start + losses = losses.apply(lambda x: x.float().mean(), batch_size=[]) + for key, value in losses.items(): + log_info.update({f"train/{key}": value.item()}) + log_info.update( + { + "train/lr": alpha * cfg.optim.lr, + "train/sampling_time": sampling_time, + "train/training_time": training_time, + "train/clip_epsilon": alpha * cfg.loss.clip_epsilon, + } + ) + + # Get test rewards + with torch.no_grad(), set_exploration_type(ExplorationType.MODE): + if ((i - 1) * frames_in_batch * frame_skip) // test_interval < ( + i * frames_in_batch * frame_skip + ) // test_interval: + actor.eval() + eval_start = time.time() + test_rewards = eval_model( + actor, test_env, num_episodes=cfg.logger.num_test_episodes + ) + eval_time = time.time() - eval_start + log_info.update( + { + "eval/reward": test_rewards.mean(), + "eval/time": eval_time, + } + ) + actor.train() + + if logger: + for key, value in log_info.items(): + logger.log_scalar(key, value, collected_frames) + + collector.update_policy_weights_() + sampling_start = time.time() + + end_time = time.time() + execution_time = end_time - start_time + print(f"Training took {execution_time:.2f} seconds to finish") + + +if __name__ == "__main__": + main() diff --git a/examples/ppo/ppo_atari_pong.png b/examples/ppo/ppo_atari_pong.png deleted file mode 100644 index 639545f29e4534bb9f525e072cd1214297619953..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1086291 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 z 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%0Aj?Yi+?sf=Aq8L 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

5@n){%b4e) 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⁢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

I~z$lc!Zt)kBNP1 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 U*co}0S6aVra*j% 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ý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%0A%(oe#QpWW3BltxdiSE64kc>`w` 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


T(vjvo@(b4MOt_cK= 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

^6cUH&f7`NUL=f?`t4Cs@6=Ip(m~Y~ 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 z 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

BIQ4(;K> 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

-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∾dUYxyXCT#n99IL*D6H&jBzO{YCb+7VNu1wv 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

pB3DL%p@ced0eq9P!fLb!zz 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 z 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 1: - base_env = TransformedEnv(env=base_env, transform=NoopResetEnv(env_cfg.noop)) - from_pixels = env_cfg.from_pixels - if from_pixels: - return make_transformed_env_pixels(base_env, env_cfg) - else: - return make_transformed_env_states(base_env, env_cfg) - - -def make_transformed_env_pixels(base_env, env_cfg): - if not isinstance(env_cfg.reward_scaling, float): - env_cfg.reward_scaling = DEFAULT_REWARD_SCALING.get(env_cfg.env_name, 5.0) - - env = TransformedEnv(base_env) - - reward_scaling = env_cfg.reward_scaling - env.append_transform(RewardScaling(0.0, reward_scaling)) - - env.append_transform(ToTensorImage()) - env.append_transform(GrayScale()) - env.append_transform(Resize(84, 84)) - env.append_transform(CatFrames(N=4, dim=-3)) - env.append_transform(RewardSum()) - env.append_transform(StepCounter()) - - obs_norm = ObservationNorm(in_keys=["pixels"], standard_normal=True) - env.append_transform(obs_norm) - - env.append_transform(DoubleToFloat()) - return env - - -def make_transformed_env_states(base_env, env_cfg): - if not isinstance(env_cfg.reward_scaling, float): - env_cfg.reward_scaling = DEFAULT_REWARD_SCALING.get(env_cfg.env_name, 5.0) - - env = TransformedEnv(base_env) - - reward_scaling = env_cfg.reward_scaling - - env.append_transform(RewardScaling(0.0, reward_scaling)) - - # we concatenate all the state vectors - # even if there is a single tensor, it'll be renamed in "observation_vector" - selected_keys = [ - key for key in env.observation_spec.keys(True, True) if key != "pixels" - ] - out_key = "observation_vector" - env.append_transform(CatTensors(in_keys=selected_keys, out_key=out_key)) - env.append_transform(RewardSum()) - env.append_transform(StepCounter()) - # obs_norm = ObservationNorm(in_keys=[out_key]) - # env.append_transform(obs_norm) - - env.append_transform(DoubleToFloat()) - return env - - -def make_parallel_env(env_cfg, state_dict): - num_envs = env_cfg.num_envs - env = make_transformed_env( - ParallelEnv(num_envs, EnvCreator(lambda: make_base_env(env_cfg))), env_cfg - ) - init_stats(env, 3, env_cfg.from_pixels) - env.load_state_dict(state_dict, strict=False) - return env - - -def get_stats(env_cfg): - env = make_transformed_env(make_base_env(env_cfg), env_cfg) - init_stats(env, env_cfg.n_samples_stats, env_cfg.from_pixels) - state_dict = env.state_dict() - for key in list(state_dict.keys()): - if key.endswith("loc") or key.endswith("scale"): - continue - del state_dict[key] - return state_dict - - -def init_stats(env, n_samples_stats, from_pixels): - for t in env.transform: - if isinstance(t, ObservationNorm): - if from_pixels: - t.init_stats( - n_samples_stats, - cat_dim=-4, - reduce_dim=tuple( - -i for i in range(1, len(t.parent.batch_size) + 5) - ), - keep_dims=(-1, -2, -3), - ) - else: - t.init_stats(n_samples_stats) - - -def make_test_env(env_cfg, state_dict): - env_cfg.num_envs = 1 - env = make_parallel_env(env_cfg, state_dict=state_dict) - return env - - -# ==================================================================== -# Collector and replay buffer -# --------------------------- - - -def make_collector(cfg, policy): - env_cfg = cfg.env - collector_cfg = cfg.collector - collector_class = SyncDataCollector - state_dict = get_stats(env_cfg) - collector = collector_class( - make_parallel_env(env_cfg, state_dict=state_dict), - policy, - frames_per_batch=collector_cfg.frames_per_batch, - total_frames=collector_cfg.total_frames, - device=collector_cfg.collector_device, - storing_device="cpu", - max_frames_per_traj=collector_cfg.max_frames_per_traj, - ) - return collector, state_dict - - -def make_data_buffer(cfg): - cfg_collector = cfg.collector - cfg_loss = cfg.loss - sampler = SamplerWithoutReplacement() - return TensorDictReplayBuffer( - storage=LazyMemmapStorage(cfg_collector.frames_per_batch), - sampler=sampler, - batch_size=cfg_loss.mini_batch_size, - ) - - -# ==================================================================== -# Model -# ----- -# -# We give one version of the model for learning from pixels, and one for state. -# TorchRL comes in handy at this point, as the high-level interactions with -# these models is unchanged, regardless of the modality. - - -def make_ppo_models(cfg): - - env_cfg = cfg.env - from_pixels = env_cfg.from_pixels - proof_environment = make_transformed_env(make_base_env(env_cfg), env_cfg) - init_stats(proof_environment, 3, env_cfg.from_pixels) - - if not from_pixels: - # we must initialize the observation norm transform - # init_stats( - # proof_environment, n_samples_stats=3, from_pixels=env_cfg.from_pixels - # ) - common_module, policy_module, value_module = make_ppo_modules_state( - proof_environment - ) - else: - common_module, policy_module, value_module = make_ppo_modules_pixels( - proof_environment - ) - - # Wrap modules in a single ActorCritic operator - actor_critic = ActorValueOperator( - common_operator=common_module, - policy_operator=policy_module, - value_operator=value_module, - ).to(cfg.optim.device) - - with torch.no_grad(): - td = proof_environment.rollout(max_steps=100, break_when_any_done=False) - td = actor_critic(td) - del td - - actor = actor_critic.get_policy_operator() - critic = actor_critic.get_value_operator() - critic_head = actor_critic.get_value_head() - - return actor, critic, critic_head - - -def make_ppo_modules_state(proof_environment): - - # Define input shape - input_shape = proof_environment.observation_spec["observation_vector"].shape - - # Define distribution class and kwargs - continuous_actions = False - if isinstance(proof_environment.action_spec.space, DiscreteBox): - num_outputs = proof_environment.action_spec.space.n - distribution_class = OneHotCategorical - distribution_kwargs = {} - else: # is ContinuousBox - continuous_actions = True - num_outputs = proof_environment.action_spec.shape[-1] * 2 - distribution_class = TanhNormal - distribution_kwargs = { - "min": proof_environment.action_spec.space.low, - "max": proof_environment.action_spec.space.high, - "tanh_loc": False, - } - - # Define input keys - in_keys = ["observation_vector"] - shared_features_size = 256 - - # Define a shared Module and TensorDictModule - common_mlp = MLP( - in_features=input_shape[-1], - activation_class=torch.nn.ReLU, - activate_last_layer=True, - out_features=shared_features_size, - num_cells=[64, 64], - ) - common_module = TensorDictModule( - module=common_mlp, - in_keys=in_keys, - out_keys=["common_features"], - ) - - # Define on head for the policy - policy_net = MLP( - in_features=shared_features_size, out_features=num_outputs, num_cells=[] - ) - if continuous_actions: - policy_net = torch.nn.Sequential( - policy_net, NormalParamExtractor(scale_lb=1e-2) - ) - - policy_module = TensorDictModule( - module=policy_net, - in_keys=["common_features"], - out_keys=["loc", "scale"] if continuous_actions else ["logits"], - ) - - # Add probabilistic sampling of the actions - policy_module = ProbabilisticActor( - policy_module, - in_keys=["loc", "scale"] if continuous_actions else ["logits"], - spec=CompositeSpec(action=proof_environment.action_spec), - safe=True, - distribution_class=distribution_class, - distribution_kwargs=distribution_kwargs, - return_log_prob=True, - default_interaction_type=ExplorationType.RANDOM, - ) - - # Define another head for the value - value_net = MLP(in_features=shared_features_size, out_features=1, num_cells=[]) - value_module = ValueOperator( - value_net, - in_keys=["common_features"], - ) - - return common_module, policy_module, value_module - - -def make_ppo_modules_pixels(proof_environment): - - # Define input shape - input_shape = proof_environment.observation_spec["pixels"].shape - - # Define distribution class and kwargs - if isinstance(proof_environment.action_spec.space, DiscreteBox): - num_outputs = proof_environment.action_spec.space.n - distribution_class = OneHotCategorical - distribution_kwargs = {} - else: # is ContinuousBox - num_outputs = proof_environment.action_spec.shape - distribution_class = TanhNormal - distribution_kwargs = { - "min": proof_environment.action_spec.space.low, - "max": proof_environment.action_spec.space.high, - } - - # Define input keys - in_keys = ["pixels"] - - # Define a shared Module and TensorDictModule (CNN + MLP) - common_cnn = ConvNet( - activation_class=torch.nn.ReLU, - num_cells=[32, 64, 64], - kernel_sizes=[8, 4, 3], - strides=[4, 2, 1], - ) - common_cnn_output = common_cnn(torch.ones(input_shape)) - common_mlp = MLP( - in_features=common_cnn_output.shape[-1], - activation_class=torch.nn.ReLU, - activate_last_layer=True, - out_features=512, - num_cells=[], - ) - common_mlp_output = common_mlp(common_cnn_output) - - # Define shared net as TensorDictModule - common_module = TensorDictModule( - module=torch.nn.Sequential(common_cnn, common_mlp), - in_keys=in_keys, - out_keys=["common_features"], - ) - - # Define on head for the policy - policy_net = MLP( - in_features=common_mlp_output.shape[-1], - out_features=num_outputs, - activation_class=torch.nn.ReLU, - num_cells=[256], - ) - policy_module = TensorDictModule( - module=policy_net, - in_keys=["common_features"], - out_keys=["logits"], - ) - - # Add probabilistic sampling of the actions - policy_module = ProbabilisticActor( - policy_module, - in_keys=["logits"], - spec=CompositeSpec(action=proof_environment.action_spec), - # safe=True, - distribution_class=distribution_class, - distribution_kwargs=distribution_kwargs, - return_log_prob=True, - default_interaction_type=ExplorationType.RANDOM, - ) - - # Define another head for the value - value_net = MLP( - activation_class=torch.nn.ReLU, - in_features=common_mlp_output.shape[-1], - out_features=1, - num_cells=[256], - ) - value_module = ValueOperator( - value_net, - in_keys=["common_features"], - ) - - return common_module, policy_module, value_module - - -# ==================================================================== -# PPO Loss -# --------- - - -def make_advantage_module(loss_cfg, value_network): - advantage_module = GAE( - gamma=loss_cfg.gamma, - lmbda=loss_cfg.gae_lamdda, - value_network=value_network, - average_gae=True, - ) - return advantage_module - - -def make_loss(loss_cfg, actor_network, value_network, value_head): - advantage_module = make_advantage_module(loss_cfg, value_network) - loss_module = ClipPPOLoss( - actor=actor_network, - critic=value_head, - clip_epsilon=loss_cfg.clip_epsilon, - loss_critic_type=loss_cfg.loss_critic_type, - entropy_coef=loss_cfg.entropy_coef, - critic_coef=loss_cfg.critic_coef, - normalize_advantage=True, - ) - return loss_module, advantage_module - - -def make_optim(optim_cfg, loss_module): - optim = torch.optim.Adam( - loss_module.parameters(), - lr=optim_cfg.lr, - weight_decay=optim_cfg.weight_decay, - ) - return optim - - -# ==================================================================== -# Logging and recording -# --------------------- - - -def make_logger(logger_cfg): - exp_name = generate_exp_name("PPO", logger_cfg.exp_name) - logger_cfg.exp_name = exp_name - logger = get_logger(logger_cfg.backend, logger_name="ppo", experiment_name=exp_name) - return logger diff --git a/examples/ppo/utils_atari.py b/examples/ppo/utils_atari.py new file mode 100644 index 00000000000..54d920e27b1 --- /dev/null +++ b/examples/ppo/utils_atari.py @@ -0,0 +1,238 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +import gymnasium as gym +import numpy as np +import torch.nn +import torch.optim +from tensordict.nn import TensorDictModule +from torchrl.data import CompositeSpec +from torchrl.data.tensor_specs import DiscreteBox +from torchrl.envs import ( + CatFrames, + default_info_dict_reader, + DoubleToFloat, + EnvCreator, + ExplorationType, + GrayScale, + NoopResetEnv, + ParallelEnv, + Resize, + RewardClipping, + RewardSum, + StepCounter, + ToTensorImage, + TransformedEnv, + VecNorm, +) +from torchrl.envs.libs.gym import GymWrapper +from torchrl.modules import ( + ActorValueOperator, + ConvNet, + MLP, + OneHotCategorical, + ProbabilisticActor, + TanhNormal, + ValueOperator, +) + +# ==================================================================== +# Environment utils +# -------------------------------------------------------------------- + + +class EpisodicLifeEnv(gym.Wrapper): + def __init__(self, env): + """Make end-of-life == end-of-episode, but only reset on true game over. + Done by DeepMind for the DQN and co. It helps value estimation. + """ + gym.Wrapper.__init__(self, env) + self.lives = 0 + + def step(self, action): + obs, rew, done, truncated, info = self.env.step(action) + lives = self.env.unwrapped.ale.lives() + info["end_of_life"] = False + if (lives < self.lives) or done: + info["end_of_life"] = True + self.lives = lives + return obs, rew, done, truncated, info + + def reset(self, **kwargs): + reset_data = self.env.reset(**kwargs) + self.lives = self.env.unwrapped.ale.lives() + return reset_data + + +def make_base_env( + env_name="BreakoutNoFrameskip-v4", frame_skip=4, device="cpu", is_test=False +): + env = gym.make(env_name) + if not is_test: + env = EpisodicLifeEnv(env) + env = GymWrapper( + env, frame_skip=frame_skip, from_pixels=True, pixels_only=False, device=device + ) + env = TransformedEnv(env) + env.append_transform(NoopResetEnv(noops=30, random=True)) + if not is_test: + reader = default_info_dict_reader(["end_of_life"]) + env.set_info_dict_reader(reader) + return env + + +def make_parallel_env(env_name, num_envs, device, is_test=False): + env = ParallelEnv( + num_envs, EnvCreator(lambda: make_base_env(env_name, device=device)) + ) + env = TransformedEnv(env) + env.append_transform(ToTensorImage()) + env.append_transform(GrayScale()) + env.append_transform(Resize(84, 84)) + env.append_transform(CatFrames(N=4, dim=-3)) + env.append_transform(RewardSum()) + env.append_transform(StepCounter(max_steps=4500)) + if not is_test: + env.append_transform(RewardClipping(-1, 1)) + env.append_transform(DoubleToFloat()) + env.append_transform(VecNorm(in_keys=["pixels"])) + return env + + +# ==================================================================== +# Model utils +# -------------------------------------------------------------------- + + +def make_ppo_modules_pixels(proof_environment): + + # Define input shape + input_shape = proof_environment.observation_spec["pixels"].shape + + # Define distribution class and kwargs + if isinstance(proof_environment.action_spec.space, DiscreteBox): + num_outputs = proof_environment.action_spec.space.n + distribution_class = OneHotCategorical + distribution_kwargs = {} + else: # is ContinuousBox + num_outputs = proof_environment.action_spec.shape + distribution_class = TanhNormal + distribution_kwargs = { + "min": proof_environment.action_spec.space.minimum, + "max": proof_environment.action_spec.space.maximum, + } + + # Define input keys + in_keys = ["pixels"] + + # Define a shared Module and TensorDictModule (CNN + MLP) + common_cnn = ConvNet( + activation_class=torch.nn.ReLU, + num_cells=[32, 64, 64], + kernel_sizes=[8, 4, 3], + strides=[4, 2, 1], + ) + common_cnn_output = common_cnn(torch.ones(input_shape)) + common_mlp = MLP( + in_features=common_cnn_output.shape[-1], + activation_class=torch.nn.ReLU, + activate_last_layer=True, + out_features=512, + num_cells=[], + ) + common_mlp_output = common_mlp(common_cnn_output) + + # Define shared net as TensorDictModule + common_module = TensorDictModule( + module=torch.nn.Sequential(common_cnn, common_mlp), + in_keys=in_keys, + out_keys=["common_features"], + ) + + # Define on head for the policy + policy_net = MLP( + in_features=common_mlp_output.shape[-1], + out_features=num_outputs, + activation_class=torch.nn.ReLU, + num_cells=[], + ) + policy_module = TensorDictModule( + module=policy_net, + in_keys=["common_features"], + out_keys=["logits"], + ) + + # Add probabilistic sampling of the actions + policy_module = ProbabilisticActor( + policy_module, + in_keys=["logits"], + spec=CompositeSpec(action=proof_environment.action_spec), + distribution_class=distribution_class, + distribution_kwargs=distribution_kwargs, + return_log_prob=True, + default_interaction_type=ExplorationType.RANDOM, + ) + + # Define another head for the value + value_net = MLP( + activation_class=torch.nn.ReLU, + in_features=common_mlp_output.shape[-1], + out_features=1, + num_cells=[], + ) + value_module = ValueOperator( + value_net, + in_keys=["common_features"], + ) + + return common_module, policy_module, value_module + + +def make_ppo_models(env_name): + + proof_environment = make_parallel_env(env_name, 1, device="cpu") + common_module, policy_module, value_module = make_ppo_modules_pixels( + proof_environment + ) + + # Wrap modules in a single ActorCritic operator + actor_critic = ActorValueOperator( + common_operator=common_module, + policy_operator=policy_module, + value_operator=value_module, + ) + + with torch.no_grad(): + td = proof_environment.rollout(max_steps=100, break_when_any_done=False) + td = actor_critic(td) + del td + + actor = actor_critic.get_policy_operator() + critic = actor_critic.get_value_operator() + + del proof_environment + + return actor, critic + + +# ==================================================================== +# Evaluation utils +# -------------------------------------------------------------------- + + +def eval_model(actor, test_env, num_episodes=3): + test_rewards = [] + for _ in range(num_episodes): + td_test = test_env.rollout( + policy=actor, + auto_reset=True, + auto_cast_to_device=True, + break_when_any_done=True, + max_steps=10_000_000, + ) + reward = td_test["next", "episode_reward"][td_test["next", "done"]] + test_rewards = np.append(test_rewards, reward.cpu().numpy()) + del td_test + return test_rewards.mean() diff --git a/examples/ppo/utils_mujoco.py b/examples/ppo/utils_mujoco.py new file mode 100644 index 00000000000..cdc681da522 --- /dev/null +++ b/examples/ppo/utils_mujoco.py @@ -0,0 +1,141 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +import numpy as np +import torch.nn +import torch.optim + +from tensordict.nn import AddStateIndependentNormalScale, TensorDictModule +from torchrl.data import CompositeSpec +from torchrl.envs import ( + ClipTransform, + DoubleToFloat, + ExplorationType, + RewardSum, + StepCounter, + TransformedEnv, + VecNorm, +) +from torchrl.envs.libs.gym import GymEnv +from torchrl.modules import MLP, ProbabilisticActor, TanhNormal, ValueOperator + +# ==================================================================== +# Environment utils +# -------------------------------------------------------------------- + + +def make_env(env_name="HalfCheetah-v4", device="cpu"): + env = GymEnv(env_name, device=device) + env = TransformedEnv(env) + env.append_transform(RewardSum()) + env.append_transform(StepCounter()) + env.append_transform(VecNorm(in_keys=["observation"])) + env.append_transform(ClipTransform(in_keys=["observation"], low=-10, high=10)) + env.append_transform(DoubleToFloat(in_keys=["observation"])) + return env + + +# ==================================================================== +# Model utils +# -------------------------------------------------------------------- + + +def make_ppo_models_state(proof_environment): + + # Define input shape + input_shape = proof_environment.observation_spec["observation"].shape + + # Define policy output distribution class + num_outputs = proof_environment.action_spec.shape[-1] + distribution_class = TanhNormal + distribution_kwargs = { + "min": proof_environment.action_spec.space.minimum, + "max": proof_environment.action_spec.space.maximum, + "tanh_loc": False, + } + + # Define policy architecture + policy_mlp = MLP( + in_features=input_shape[-1], + activation_class=torch.nn.Tanh, + out_features=num_outputs, # predict only loc + num_cells=[64, 64], + ) + + # Initialize policy weights + for layer in policy_mlp.modules(): + if isinstance(layer, torch.nn.Linear): + torch.nn.init.orthogonal_(layer.weight, 1.0) + layer.bias.data.zero_() + + # Add state-independent normal scale + policy_mlp = torch.nn.Sequential( + policy_mlp, + AddStateIndependentNormalScale(proof_environment.action_spec.shape[-1]), + ) + + # Add probabilistic sampling of the actions + policy_module = ProbabilisticActor( + TensorDictModule( + module=policy_mlp, + in_keys=["observation"], + out_keys=["loc", "scale"], + ), + in_keys=["loc", "scale"], + spec=CompositeSpec(action=proof_environment.action_spec), + distribution_class=distribution_class, + distribution_kwargs=distribution_kwargs, + return_log_prob=True, + default_interaction_type=ExplorationType.RANDOM, + ) + + # Define value architecture + value_mlp = MLP( + in_features=input_shape[-1], + activation_class=torch.nn.Tanh, + out_features=1, + num_cells=[64, 64], + ) + + # Initialize value weights + for layer in value_mlp.modules(): + if isinstance(layer, torch.nn.Linear): + torch.nn.init.orthogonal_(layer.weight, 0.01) + layer.bias.data.zero_() + + # Define value module + value_module = ValueOperator( + value_mlp, + in_keys=["observation"], + ) + + return policy_module, value_module + + +def make_ppo_models(env_name): + proof_environment = make_env(env_name, device="cpu") + actor, critic = make_ppo_models_state(proof_environment) + return actor, critic + + +# ==================================================================== +# Evaluation utils +# -------------------------------------------------------------------- + + +def eval_model(actor, test_env, num_episodes=3): + test_rewards = [] + for _ in range(num_episodes): + td_test = test_env.rollout( + policy=actor, + auto_reset=True, + auto_cast_to_device=True, + break_when_any_done=True, + max_steps=10_000_000, + ) + reward = td_test["next", "episode_reward"][td_test["next", "done"]] + test_rewards = np.append(test_rewards, reward.cpu().numpy()) + del td_test + return test_rewards.mean() From e45192620d86139e88d0af53f8557df9156fe01e Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Thu, 21 Sep 2023 15:04:10 +0100 Subject: [PATCH 104/148] [Feature] make csv logger `exist_ok` on logging folder (#1561) Signed-off-by: Matteo Bettini --- torchrl/record/loggers/csv.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/torchrl/record/loggers/csv.py b/torchrl/record/loggers/csv.py index 1336433acb2..4f7ae47606a 100644 --- a/torchrl/record/loggers/csv.py +++ b/torchrl/record/loggers/csv.py @@ -21,10 +21,10 @@ def __init__(self, log_dir: str): self.videos_counter = defaultdict(lambda: 0) self.text_counter = defaultdict(lambda: 0) self.log_dir = log_dir - os.makedirs(self.log_dir) - os.makedirs(os.path.join(self.log_dir, "scalars")) - os.makedirs(os.path.join(self.log_dir, "videos")) - os.makedirs(os.path.join(self.log_dir, "texts")) + os.makedirs(self.log_dir, exist_ok=True) + os.makedirs(os.path.join(self.log_dir, "scalars"), exist_ok=True) + os.makedirs(os.path.join(self.log_dir, "videos"), exist_ok=True) + os.makedirs(os.path.join(self.log_dir, "texts"), exist_ok=True) self.files = {} From 7714c8fbd61a6dbc0af83e3c32cd91f456f7d5e3 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Thu, 21 Sep 2023 15:04:24 +0100 Subject: [PATCH 105/148] [BugFix] Load collector frames and iter (#1557) Signed-off-by: Matteo Bettini --- test/test_collector.py | 43 ++++++++++++++++++++++++++++++++ torchrl/collectors/collectors.py | 39 ++++++++++++++++------------- 2 files changed, 64 insertions(+), 18 deletions(-) diff --git a/test/test_collector.py b/test/test_collector.py index 7b9c645815a..051cc4d819c 100644 --- a/test/test_collector.py +++ b/test/test_collector.py @@ -1740,6 +1740,49 @@ def test_param_sync(self, give_weights, collector, policy_device, env_device): col.shutdown() +@pytest.mark.parametrize( + "collector_class", + [MultiSyncDataCollector, MultiaSyncDataCollector, SyncDataCollector], +) +def test_collector_reloading(collector_class): + def make_env(): + return ContinuousActionVecMockEnv() + + dummy_env = make_env() + obs_spec = dummy_env.observation_spec["observation"] + policy_module = nn.Linear(obs_spec.shape[-1], dummy_env.action_spec.shape[-1]) + policy = Actor(policy_module, spec=dummy_env.action_spec) + policy_explore = OrnsteinUhlenbeckProcessWrapper(policy) + + collector_kwargs = { + "create_env_fn": make_env, + "policy": policy_explore, + "frames_per_batch": 30, + "total_frames": 90, + } + if collector_class is not SyncDataCollector: + collector_kwargs["create_env_fn"] = [ + collector_kwargs["create_env_fn"] for _ in range(3) + ] + + collector = collector_class(**collector_kwargs) + for i, _ in enumerate(collector): + if i == 3: + break + collector_frames = collector._frames + collector_iter = collector._iter + collector_state_dict = collector.state_dict() + collector.shutdown() + + collector = collector_class(**collector_kwargs) + collector.load_state_dict(collector_state_dict) + assert collector._frames == collector_frames + assert collector._iter == collector_iter + for _ in enumerate(collector): + raise AssertionError + collector.shutdown() + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/torchrl/collectors/collectors.py b/torchrl/collectors/collectors.py index 90b42df08c3..2e6ff5f62e5 100644 --- a/torchrl/collectors/collectors.py +++ b/torchrl/collectors/collectors.py @@ -695,6 +695,8 @@ def __init__( self.split_trajs = split_trajs self._exclude_private_keys = True self.interruptor = interruptor + self._frames = 0 + self._iter = -1 # for RPC def next(self): @@ -745,11 +747,9 @@ def iterator(self) -> Iterator[TensorDictBase]: stream = None with torch.cuda.stream(stream): total_frames = self.total_frames - i = -1 - self._frames = 0 - while True: - i += 1 - self._iter = i + + while self._frames < self.total_frames: + self._iter += 1 tensordict_out = self.rollout() self._frames += tensordict_out.numel() if self._frames >= total_frames: @@ -788,9 +788,6 @@ def iterator(self) -> Iterator[TensorDictBase]: # >>> assert data0["done"] is not data1["done"] yield tensordict_out.clone() - if self._frames >= self.total_frames: - break - def _step_and_maybe_reset(self) -> None: any_done = False @@ -985,6 +982,8 @@ def state_dict(self) -> OrderedDict: else: state_dict = OrderedDict(env_state_dict=env_state_dict) + state_dict.update({"frames": self._frames, "iter": self._iter}) + return state_dict def load_state_dict(self, state_dict: OrderedDict, **kwargs) -> None: @@ -1000,6 +999,8 @@ def load_state_dict(self, state_dict: OrderedDict, **kwargs) -> None: self.env.load_state_dict(state_dict["env_state_dict"], **kwargs) if strict or "policy_state_dict" in state_dict: self.policy.load_state_dict(state_dict["policy_state_dict"], **kwargs) + self._frames = state_dict["frames"] + self._iter = state_dict["iter"] def __repr__(self) -> str: env_str = indent(f"env={self.env}", 4 * " ") @@ -1284,6 +1285,8 @@ def device_err_msg(device_name, devices_list): self.interruptor = None self._run_processes() self._exclude_private_keys = True + self._frames = 0 + self._iter = -1 @property def frames_per_batch_worker(self): @@ -1471,6 +1474,7 @@ def state_dict(self) -> OrderedDict: if msg != "state_dict": raise RuntimeError(f"Expected msg='state_dict', got {msg}") state_dict[f"worker{idx}"] = _state_dict + state_dict.update({"frames": self._frames, "iter": self._iter}) return state_dict @@ -1488,6 +1492,8 @@ def load_state_dict(self, state_dict: OrderedDict) -> None: _, msg = self.pipes[idx].recv() if msg != "loaded": raise RuntimeError(f"Expected msg='loaded', got {msg}") + self._frames = state_dict["frames"] + self._iter = state_dict["iter"] @accept_remote_rref_udf_invocation @@ -1639,27 +1645,26 @@ def _queue_len(self) -> int: return self.num_workers def iterator(self) -> Iterator[TensorDictBase]: - i = -1 - frames = 0 + self.buffers = {} dones = [False for _ in range(self.num_workers)] workers_frames = [0 for _ in range(self.num_workers)] same_device = None self.out_buffer = None - while not all(dones) and frames < self.total_frames: + while not all(dones) and self._frames < self.total_frames: _check_for_faulty_process(self.procs) if self.update_at_each_batch: self.update_policy_weights_() for idx in range(self.num_workers): - if frames < self.init_random_frames: + if self._frames < self.init_random_frames: msg = "continue_random" else: msg = "continue" self.pipes[idx].send((None, msg)) - i += 1 + self._iter += 1 max_traj_idx = None if self.interruptor is not None and self.preemptive_threshold < 1.0: @@ -1714,10 +1719,10 @@ def iterator(self) -> Iterator[TensorDictBase]: if self.split_trajs: out = split_trajectories(self.out_buffer, prefix="collector") - frames += out.get(("collector", "mask")).sum().item() + self._frames += out.get(("collector", "mask")).sum().item() else: out = self.out_buffer.clone() - frames += prod(out.shape) + self._frames += prod(out.shape) if self.postprocs: self.postprocs = self.postprocs.to(out.device) out = self.postprocs(out) @@ -1894,13 +1899,11 @@ def iterator(self) -> Iterator[TensorDictBase]: else: self.pipes[i].send((None, "continue")) self.running = True - i = -1 - self._frames = 0 workers_frames = [0 for _ in range(self.num_workers)] while self._frames < self.total_frames: _check_for_faulty_process(self.procs) - i += 1 + self._iter += 1 idx, j, out = self._get_from_queue() worker_frames = out.numel() From 288c458ca50b6047566822c9573b5de5143d7c13 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Thu, 21 Sep 2023 19:11:11 +0100 Subject: [PATCH 106/148] [Refactor] Use `wait` instead of `is_set` to get results in ParallelEnv (#1562) --- torchrl/envs/batched_envs.py | 25 ++++++++----------------- 1 file changed, 8 insertions(+), 17 deletions(-) diff --git a/torchrl/envs/batched_envs.py b/torchrl/envs/batched_envs.py index 67944af1f35..edc50ef80c3 100644 --- a/torchrl/envs/batched_envs.py +++ b/torchrl/envs/batched_envs.py @@ -793,14 +793,10 @@ def _step(self, tensordict: TensorDictBase) -> TensorDictBase: for i in range(self.num_workers): self.parent_channels[i].send(("step", None)) - completed = set() - while len(completed) < self.num_workers: - for i, event in enumerate(self._events): - if i in completed: - continue - if event.is_set(): - completed.add(i) - event.clear() + for i in range(self.num_workers): + event = self._events[i] + event.wait() + event.clear() # We must pass a clone of the tensordict, as the values of this tensordict # will be modified in-place at further steps @@ -863,15 +859,10 @@ def _reset(self, tensordict: TensorDictBase, **kwargs) -> TensorDictBase: channel.send(out) workers.append(i) - completed = set() - while len(completed) < len(workers): - for i in workers: - event = self._events[i] - if i in completed: - continue - if event.is_set(): - completed.add(i) - event.clear() + for i in workers: + event = self._events[i] + event.wait() + event.clear() if self._single_task: # select + clone creates 2 tds, but we can create one only From a7a7163a38b8726c45562ccb3489b9ffa27893ec Mon Sep 17 00:00:00 2001 From: Albert Bou Date: Fri, 22 Sep 2023 10:47:26 +0200 Subject: [PATCH 107/148] [Algorithm] Update A2C examples (#1521) Co-authored-by: vmoens --- .../linux_examples/scripts/run_test.sh | 29 +- examples/a2c/README.md | 29 ++ examples/a2c/a2c.py | 146 ------ examples/a2c/a2c_atari.py | 218 +++++++++ examples/a2c/a2c_mujoco.py | 201 ++++++++ examples/a2c/a2c_mujoco_halfcheetah.png | Bin 1059538 -> 0 bytes examples/a2c/config.yaml | 39 -- examples/a2c/config_atari.yaml | 33 ++ examples/a2c/config_mujoco.yaml | 30 ++ examples/a2c/training_curves.md | 7 - examples/a2c/utils.py | 437 ------------------ examples/a2c/utils_atari.py | 239 ++++++++++ examples/a2c/utils_mujoco.py | 141 ++++++ 13 files changed, 903 insertions(+), 646 deletions(-) create mode 100644 examples/a2c/README.md delete mode 100644 examples/a2c/a2c.py create mode 100644 examples/a2c/a2c_atari.py create mode 100644 examples/a2c/a2c_mujoco.py delete mode 100644 examples/a2c/a2c_mujoco_halfcheetah.png delete mode 100644 examples/a2c/config.yaml create mode 100644 examples/a2c/config_atari.yaml create mode 100644 examples/a2c/config_mujoco.yaml delete mode 100644 examples/a2c/training_curves.md delete mode 100644 examples/a2c/utils.py create mode 100644 examples/a2c/utils_atari.py create mode 100644 examples/a2c/utils_mujoco.py diff --git a/.github/unittest/linux_examples/scripts/run_test.sh b/.github/unittest/linux_examples/scripts/run_test.sh index f435d3fc732..5794c21673d 100755 --- a/.github/unittest/linux_examples/scripts/run_test.sh +++ b/.github/unittest/linux_examples/scripts/run_test.sh @@ -78,15 +78,19 @@ python .github/unittest/helpers/coverage_run_parallel.py examples/ddpg/ddpg.py \ logger.backend= # record_video=True \ # record_frames=4 \ -python .github/unittest/helpers/coverage_run_parallel.py examples/a2c/a2c.py \ - env.num_envs=1 \ - collector.total_frames=48 \ - collector.frames_per_batch=16 \ - collector.collector_device=cuda:0 \ +python .github/unittest/helpers/coverage_run_parallel.py examples/a2c/a2c_mujoco.py \ + env.env_name=HalfCheetah-v4 \ + collector.total_frames=40 \ + collector.frames_per_batch=20 \ + loss.mini_batch_size=10 \ logger.backend= \ - logger.log_interval=4 \ - optim.lr_scheduler=False \ - optim.device=cuda:0 + logger.test_interval=40 +python .github/unittest/helpers/coverage_run_parallel.py examples/a2c/a2c_atari.py \ + collector.total_frames=80 \ + collector.frames_per_batch=20 \ + loss.mini_batch_size=20 \ + logger.backend= \ + logger.test_interval=40 python .github/unittest/helpers/coverage_run_parallel.py examples/dqn/dqn.py \ total_frames=48 \ init_random_frames=10 \ @@ -190,15 +194,6 @@ python .github/unittest/helpers/coverage_run_parallel.py examples/ddpg/ddpg.py \ logger.backend= # record_video=True \ # record_frames=4 \ -python .github/unittest/helpers/coverage_run_parallel.py examples/a2c/a2c.py \ - env.num_envs=1 \ - collector.total_frames=48 \ - collector.frames_per_batch=16 \ - collector.collector_device=cuda:0 \ - logger.backend= \ - logger.log_interval=4 \ - optim.lr_scheduler=False \ - optim.device=cuda:0 python .github/unittest/helpers/coverage_run_parallel.py examples/dqn/dqn.py \ total_frames=48 \ init_random_frames=10 \ diff --git a/examples/a2c/README.md b/examples/a2c/README.md new file mode 100644 index 00000000000..513e6d70811 --- /dev/null +++ b/examples/a2c/README.md @@ -0,0 +1,29 @@ +## Reproducing Advantage Actor Critic (A2C) Algorithm Results + +This repository contains scripts that enable training agents using the Advantage Actor Critic (A2C) Algorithm on MuJoCo and Atari environments. We follow the original paper [Asynchronous Methods for Deep Reinforcement Learning](https://arxiv.org/abs/1602.01783) by Mnih et al. (2016) to implement the A2C algorithm but fix the number of steps during the collection phase. + + +## Examples Structure + +Please note that each example is independent of each other for the sake of simplicity. Each example contains the following files: + +1. **Main Script:** The definition of algorithm components and the training loop can be found in the main script (e.g. a2c_atari.py). + +2. **Utils File:** A utility file is provided to contain various helper functions, generally to create the environment and the models (e.g. utils_atari.py). + +3. **Configuration File:** This file includes default hyperparameters specified in the original paper. Users can modify these hyperparameters to customize their experiments (e.g. config_atari.yaml). + + +## Running the Examples + +You can execute the A2C algorithm on Atari environments by running the following command: + +```bash +python a2c_atari.py +``` + +You can execute the A2C algorithm on MuJoCo environments by running the following command: + +```bash +python a2c_mujoco.py +``` diff --git a/examples/a2c/a2c.py b/examples/a2c/a2c.py deleted file mode 100644 index 74d8f6bc81f..00000000000 --- a/examples/a2c/a2c.py +++ /dev/null @@ -1,146 +0,0 @@ -# Copyright (c) Meta Platforms, Inc. and affiliates. -# -# This source code is licensed under the MIT license found in the -# LICENSE file in the root directory of this source tree. -"""A2C Example. - -This is a self-contained example of a A2C training script. - -Both state and pixel-based environments are supported. - -The helper functions are coded in the utils.py associated with this script. -""" -import hydra - - -@hydra.main(config_path=".", config_name="config", version_base="1.1") -def main(cfg: "DictConfig"): # noqa: F821 - - import torch - import tqdm - from utils import ( - make_a2c_models, - make_collector, - make_logger, - make_loss, - make_optim, - make_test_env, - ) - - # Correct for frame_skip - cfg.collector.total_frames = cfg.collector.total_frames // cfg.env.frame_skip - cfg.collector.frames_per_batch = ( - cfg.collector.frames_per_batch // cfg.env.frame_skip - ) - - model_device = cfg.optim.device - actor, critic = make_a2c_models(cfg) - actor = actor.to(model_device) - critic = critic.to(model_device) - - collector = make_collector(cfg, policy=actor) - loss_module, adv_module = make_loss( - cfg.loss, actor_network=actor, value_network=critic - ) - optim = make_optim(cfg.optim, actor_network=actor, value_network=critic) - - batch_size = cfg.collector.total_frames * cfg.env.num_envs - total_network_updates = cfg.collector.total_frames // batch_size - - scheduler = None - if cfg.optim.lr_scheduler: - scheduler = torch.optim.lr_scheduler.LinearLR( - optim, total_iters=total_network_updates, start_factor=1.0, end_factor=0.1 - ) - - logger = None - if cfg.logger.backend: - logger = make_logger(cfg.logger) - test_env = make_test_env(cfg.env) - record_interval = cfg.logger.log_interval - pbar = tqdm.tqdm(total=cfg.collector.total_frames) - collected_frames = 0 - - # Main loop - r0 = None - l0 = None - for data in collector: - - frames_in_batch = data.numel() - collected_frames += frames_in_batch * cfg.env.frame_skip - pbar.update(data.numel()) - data_view = data.reshape(-1) - - # Compute GAE - with torch.no_grad(): - batch = adv_module(data_view) - - # Normalize advantage - adv = batch.get("advantage") - loc = adv.mean().item() - scale = adv.std().clamp_min(1e-6).item() - adv = (adv - loc) / scale - batch.set("advantage", adv) - - # Forward pass A2C loss - batch = batch.to(model_device) - loss = loss_module(batch) - loss_sum = loss["loss_critic"] + loss["loss_objective"] + loss["loss_entropy"] - - # Backward pass + learning step - loss_sum.backward() - grad_norm = torch.nn.utils.clip_grad_norm_( - list(actor.parameters()) + list(critic.parameters()), max_norm=0.5 - ) - optim.step() - if scheduler is not None: - scheduler.step() - optim.zero_grad() - - # Logging - if r0 is None: - r0 = data["next", "reward"].mean().item() - if l0 is None: - l0 = loss_sum.item() - pbar.set_description( - f"loss: {loss_sum.item(): 4.4f} (init: {l0: 4.4f}), reward: {data['next', 'reward'].mean(): 4.4f} (init={r0: 4.4f})" - ) - if logger is not None: - for key, value in loss.items(): - logger.log_scalar(key, value.item(), collected_frames) - logger.log_scalar("grad_norm", grad_norm.item(), collected_frames) - episode_rewards = data["next", "episode_reward"][data["next", "done"]] - if len(episode_rewards) > 0: - logger.log_scalar( - "reward_training", episode_rewards.mean().item(), collected_frames - ) - collector.update_policy_weights_() - - # Test current policy - if ( - logger is not None - and (collected_frames - frames_in_batch) // record_interval - < collected_frames // record_interval - ): - - with torch.no_grad(): - test_env.eval() - actor.eval() - # Generate a complete episode - td_test = test_env.rollout( - policy=actor, - max_steps=10_000_000, - auto_reset=True, - auto_cast_to_device=True, - break_when_any_done=True, - ).clone() - logger.log_scalar( - "reward_testing", - td_test["next", "reward"].sum().item(), - collected_frames, - ) - actor.train() - - -if __name__ == "__main__": - main() diff --git a/examples/a2c/a2c_atari.py b/examples/a2c/a2c_atari.py new file mode 100644 index 00000000000..88deea2e217 --- /dev/null +++ b/examples/a2c/a2c_atari.py @@ -0,0 +1,218 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +import hydra + + +@hydra.main(config_path=".", config_name="config_atari", version_base="1.1") +def main(cfg: "DictConfig"): # noqa: F821 + + import time + + import torch.optim + import tqdm + + from tensordict import TensorDict + from torchrl.collectors import SyncDataCollector + from torchrl.data import LazyMemmapStorage, TensorDictReplayBuffer + from torchrl.data.replay_buffers.samplers import SamplerWithoutReplacement + from torchrl.envs import ExplorationType, set_exploration_type + from torchrl.objectives import A2CLoss + from torchrl.objectives.value.advantages import GAE + from torchrl.record.loggers import generate_exp_name, get_logger + from utils_atari import eval_model, make_parallel_env, make_ppo_models + + device = "cpu" if not torch.cuda.device_count() else "cuda" + + # Correct for frame_skip + frame_skip = 4 + total_frames = cfg.collector.total_frames // frame_skip + frames_per_batch = cfg.collector.frames_per_batch // frame_skip + mini_batch_size = cfg.loss.mini_batch_size // frame_skip + test_interval = cfg.logger.test_interval // frame_skip + + # Create models (check utils_atari.py) + actor, critic, critic_head = make_ppo_models(cfg.env.env_name) + actor, critic, critic_head = ( + actor.to(device), + critic.to(device), + critic_head.to(device), + ) + + # Create collector + collector = SyncDataCollector( + create_env_fn=make_parallel_env(cfg.env.env_name, cfg.env.num_envs, device), + policy=actor, + frames_per_batch=frames_per_batch, + total_frames=total_frames, + device=device, + storing_device=device, + max_frames_per_traj=-1, + ) + + # Create data buffer + sampler = SamplerWithoutReplacement() + data_buffer = TensorDictReplayBuffer( + storage=LazyMemmapStorage(frames_per_batch), + sampler=sampler, + batch_size=mini_batch_size, + ) + + # Create loss and adv modules + adv_module = GAE( + gamma=cfg.loss.gamma, + lmbda=cfg.loss.gae_lambda, + value_network=critic, + average_gae=True, + ) + loss_module = A2CLoss( + actor=actor, + critic=critic, + loss_critic_type=cfg.loss.loss_critic_type, + entropy_coef=cfg.loss.entropy_coef, + critic_coef=cfg.loss.critic_coef, + ) + + # Create optimizer + optim = torch.optim.Adam( + loss_module.parameters(), + lr=cfg.optim.lr, + weight_decay=cfg.optim.weight_decay, + eps=cfg.optim.eps, + ) + + # Create logger + logger = None + if cfg.logger.backend: + exp_name = generate_exp_name("A2C", f"{cfg.logger.exp_name}_{cfg.env.env_name}") + logger = get_logger( + cfg.logger.backend, logger_name="a2c", experiment_name=exp_name + ) + + # Create test environment + test_env = make_parallel_env(cfg.env.env_name, 1, device, is_test=True) + test_env.eval() + + # Main loop + collected_frames = 0 + num_network_updates = 0 + start_time = time.time() + pbar = tqdm.tqdm(total=total_frames) + num_mini_batches = frames_per_batch // mini_batch_size + total_network_updates = (total_frames // frames_per_batch) * num_mini_batches + + sampling_start = time.time() + for i, data in enumerate(collector): + + log_info = {} + sampling_time = time.time() - sampling_start + frames_in_batch = data.numel() + collected_frames += frames_in_batch * frame_skip + pbar.update(data.numel()) + + # Get training rewards and lengths + episode_rewards = data["next", "episode_reward"][data["next", "done"]] + if len(episode_rewards) > 0: + episode_length = data["next", "step_count"][data["next", "done"]] + log_info.update( + { + "train/reward": episode_rewards.mean().item(), + "train/episode_length": episode_length.sum().item() + / len(episode_length), + } + ) + + # Apply episodic end of life + data["done"].copy_(data["end_of_life"]) + data["next", "done"].copy_(data["next", "end_of_life"]) + + losses = TensorDict({}, batch_size=[num_mini_batches]) + training_start = time.time() + + # Compute GAE + with torch.no_grad(): + data = adv_module(data) + data_reshape = data.reshape(-1) + + # Update the data buffer + data_buffer.extend(data_reshape) + + for k, batch in enumerate(data_buffer): + + batch = batch.to(device) + + # Linearly decrease the learning rate and clip epsilon + alpha = 1.0 + if cfg.optim.anneal_lr: + alpha = 1 - (num_network_updates / total_network_updates) + for group in optim.param_groups: + group["lr"] = cfg.optim.lr * alpha + num_network_updates += 1 + + # Forward pass A2C loss + loss = loss_module(batch) + losses[k] = loss.select( + "loss_critic", "loss_entropy", "loss_objective" + ).detach() + loss_sum = ( + loss["loss_critic"] + loss["loss_objective"] + loss["loss_entropy"] + ) + + # Backward pass + loss_sum.backward() + torch.nn.utils.clip_grad_norm_( + list(loss_module.parameters()), max_norm=cfg.optim.max_grad_norm + ) + + # Update the networks + optim.step() + optim.zero_grad() + + # Get training losses + training_time = time.time() - training_start + losses = losses.apply(lambda x: x.float().mean(), batch_size=[]) + for key, value in losses.items(): + log_info.update({f"train/{key}": value.item()}) + log_info.update( + { + "train/lr": alpha * cfg.optim.lr, + "train/sampling_time": sampling_time, + "train/training_time": training_time, + } + ) + + # Get test rewards + with torch.no_grad(), set_exploration_type(ExplorationType.MODE): + if ((i - 1) * frames_in_batch * frame_skip) // test_interval < ( + i * frames_in_batch * frame_skip + ) // test_interval: + actor.eval() + eval_start = time.time() + test_rewards = eval_model( + actor, test_env, num_episodes=cfg.logger.num_test_episodes + ) + eval_time = time.time() - eval_start + log_info.update( + { + "test/reward": test_rewards.mean(), + "test/eval_time": eval_time, + } + ) + actor.train() + + if logger: + for key, value in log_info.items(): + logger.log_scalar(key, value, collected_frames) + + collector.update_policy_weights_() + sampling_start = time.time() + + end_time = time.time() + execution_time = end_time - start_time + print(f"Training took {execution_time:.2f} seconds to finish") + + +if __name__ == "__main__": + main() diff --git a/examples/a2c/a2c_mujoco.py b/examples/a2c/a2c_mujoco.py new file mode 100644 index 00000000000..4192ddc6556 --- /dev/null +++ b/examples/a2c/a2c_mujoco.py @@ -0,0 +1,201 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +import hydra + + +@hydra.main(config_path=".", config_name="config_mujoco", version_base="1.1") +def main(cfg: "DictConfig"): # noqa: F821 + + import time + + import torch.optim + import tqdm + + from tensordict import TensorDict + from torchrl.collectors import SyncDataCollector + from torchrl.data import LazyMemmapStorage, TensorDictReplayBuffer + from torchrl.data.replay_buffers.samplers import SamplerWithoutReplacement + from torchrl.envs import ExplorationType, set_exploration_type + from torchrl.objectives import A2CLoss + from torchrl.objectives.value.advantages import GAE + from torchrl.record.loggers import generate_exp_name, get_logger + from utils_mujoco import eval_model, make_env, make_ppo_models + + # Define paper hyperparameters + device = "cpu" if not torch.cuda.device_count() else "cuda" + num_mini_batches = cfg.collector.frames_per_batch // cfg.loss.mini_batch_size + total_network_updates = ( + cfg.collector.total_frames // cfg.collector.frames_per_batch + ) * num_mini_batches + + # Create models (check utils_mujoco.py) + actor, critic = make_ppo_models(cfg.env.env_name) + actor, critic = actor.to(device), critic.to(device) + + # Create collector + collector = SyncDataCollector( + create_env_fn=make_env(cfg.env.env_name, device), + policy=actor, + frames_per_batch=cfg.collector.frames_per_batch, + total_frames=cfg.collector.total_frames, + device=device, + storing_device=device, + max_frames_per_traj=-1, + ) + + # Create data buffer + sampler = SamplerWithoutReplacement() + data_buffer = TensorDictReplayBuffer( + storage=LazyMemmapStorage(cfg.collector.frames_per_batch, device=device), + sampler=sampler, + batch_size=cfg.loss.mini_batch_size, + ) + + # Create loss and adv modules + adv_module = GAE( + gamma=cfg.loss.gamma, + lmbda=cfg.loss.gae_lambda, + value_network=critic, + average_gae=False, + ) + loss_module = A2CLoss( + actor=actor, + critic=critic, + loss_critic_type=cfg.loss.loss_critic_type, + entropy_coef=cfg.loss.entropy_coef, + critic_coef=cfg.loss.critic_coef, + ) + + # Create optimizers + actor_optim = torch.optim.Adam(actor.parameters(), lr=cfg.optim.lr) + critic_optim = torch.optim.Adam(critic.parameters(), lr=cfg.optim.lr) + + # Create logger + logger = None + if cfg.logger.backend: + exp_name = generate_exp_name("A2C", f"{cfg.logger.exp_name}_{cfg.env.env_name}") + logger = get_logger( + cfg.logger.backend, logger_name="a2c", experiment_name=exp_name + ) + + # Create test environment + test_env = make_env(cfg.env.env_name, device) + test_env.eval() + + # Main loop + collected_frames = 0 + num_network_updates = 0 + start_time = time.time() + pbar = tqdm.tqdm(total=cfg.collector.total_frames) + + sampling_start = time.time() + for i, data in enumerate(collector): + + log_info = {} + sampling_time = time.time() - sampling_start + frames_in_batch = data.numel() + collected_frames += frames_in_batch + pbar.update(data.numel()) + + # Get training rewards and lengths + episode_rewards = data["next", "episode_reward"][data["next", "done"]] + if len(episode_rewards) > 0: + episode_length = data["next", "step_count"][data["next", "done"]] + log_info.update( + { + "train/reward": episode_rewards.mean().item(), + "train/episode_length": episode_length.sum().item() + / len(episode_length), + } + ) + + losses = TensorDict({}, batch_size=[num_mini_batches]) + training_start = time.time() + + # Compute GAE + with torch.no_grad(): + data = adv_module(data) + data_reshape = data.reshape(-1) + + # Update the data buffer + data_buffer.extend(data_reshape) + + for k, batch in enumerate(data_buffer): + + # Linearly decrease the learning rate and clip epsilon + alpha = 1.0 + if cfg.optim.anneal_lr: + alpha = 1 - (num_network_updates / total_network_updates) + for group in actor_optim.param_groups: + group["lr"] = cfg.optim.lr * alpha + for group in critic_optim.param_groups: + group["lr"] = cfg.optim.lr * alpha + num_network_updates += 1 + + # Forward pass A2C loss + loss = loss_module(batch) + losses[k] = loss.select( + "loss_critic", "loss_objective" # , "loss_entropy" + ).detach() + critic_loss = loss["loss_critic"] + actor_loss = loss["loss_objective"] # + loss["loss_entropy"] + + # Backward pass + actor_loss.backward() + critic_loss.backward() + + # Update the networks + actor_optim.step() + critic_optim.step() + actor_optim.zero_grad() + critic_optim.zero_grad() + + # Get training losses + training_time = time.time() - training_start + losses = losses.apply(lambda x: x.float().mean(), batch_size=[]) + for key, value in losses.items(): + log_info.update({f"train/{key}": value.item()}) + log_info.update( + { + "train/lr": alpha * cfg.optim.lr, + "train/sampling_time": sampling_time, + "train/training_time": training_time, + } + ) + + # Get test rewards + with torch.no_grad(), set_exploration_type(ExplorationType.MODE): + if ((i - 1) * frames_in_batch) // cfg.logger.test_interval < ( + i * frames_in_batch + ) // cfg.logger.test_interval: + actor.eval() + eval_start = time.time() + test_rewards = eval_model( + actor, test_env, num_episodes=cfg.logger.num_test_episodes + ) + eval_time = time.time() - eval_start + log_info.update( + { + "test/reward": test_rewards.mean(), + "test/eval_time": eval_time, + } + ) + actor.train() + + if logger: + for key, value in log_info.items(): + logger.log_scalar(key, value, collected_frames) + + collector.update_policy_weights_() + sampling_start = time.time() + + end_time = time.time() + execution_time = end_time - start_time + print(f"Training took {execution_time:.2f} seconds to finish") + + +if __name__ == "__main__": + main() diff --git a/examples/a2c/a2c_mujoco_halfcheetah.png b/examples/a2c/a2c_mujoco_halfcheetah.png deleted file mode 100644 index a9cc5deeb2d2f1c17c9f7f87fd99d0d0aad325bc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1059538 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

)$kK7h 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

$4<8WDWM2KkIqwp`FkLBWAd1)B$Iw#^3fvYNyi6 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%0AP&0i(BgD7dPmn7CJPGgi;+$|Qf)WGH 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

peFE#ZB!zd8yq0 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�LZ`pXUA}D51 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

`2lPW8V(*@r~+C(?E@ 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

39bo#WZ`{ffi-sYRwzj<$o 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

Xj&5PesAhKI|5JAAot}4 zlzOa(phqrv{rl>9dla3+s9Jl3$zmjO|L7^kC@+TNyZPaQkZ=p0kPUxfP?Q!`l|@Fk zd2yyVosOnREi6;2p)N8^wd#BtoT(|_LUV07fia8IC8A(3El=X}y%#-~We6u%DWhEg zWiiYCd^yrg^$hbtniI*3_=dEc;dHK`x$?m(L4e31X(Wt6qzpOh-*4R%jKaFI{GV&Z|RrAM)VMbWv#t!MoM{vQ7F)+(uBdYP?BVLv09 zzaUgLP&*|^JLCQ^Y8Ib(^pAUqGw2$3zAw}SmtLJb_hW^RJx-DTx?2Eg` z(}{WiV)uL!6J@U!@c-ZfD7sax0C2SqUexf_N>6;X#H^F9sLF)BCppuuGdC1or2rF= z+zOlmb?xI%@OkZ=PkC@TCn_+U_rUiKYCJfCEB&@fidmozQr|_L)M>Nd7!rA8yvZ$+nyiuXL^3)yJk|Z7;2J?~rv(Cz%{m!(i<|xt2vN(E zx*Y<;S#Rj%yFvvI?IOvKvfcfSOe2w9Q6DD4ujZQ0Q)B)Ta(*)}t1R1Qq&?l5tB8NA z#1Sgf2s}bU`lUM`!}xti29R)VJ0pD($}sK7lEa?<$Fk!ODZK^`L}tQg32B!C>)mHZ z*6#=-G;Lv*caIO|*B9=Qqr)`ruCo>K_;*}nhjooQi+}P;Fl{kuk+`wBJD1&V)1O4= zGFjDy@BLSHd#tWmNkf`vpM3ZbFC# zSziM^4>t-K$o&0H-E@EZD0bPQqCunD{ElDGLAK5Q9ELKpDoem>AYA5IU?A2Il^xf^ zL)ka6)RRDg#aZ(WP}K8XaAYEbr4_q^X?12LiOE*-{TzMpk54{}Kj+2C8O4kWFnNnS z6~#Y2iE7$}lh6DQ?%pygt}bd5#NFK`1PKHuI1~;E5Foe&4er4qP`GQ*;BLW!2MC1| z2=4AKL95WJntH$Pnf1NBW_o(9o|!c>f9u{lbD7iZUGqnP%0 z?eW>{Mpl2?D!?yx$_Pt9{|d+$?(*dG1k8@@+yzO%y$<0ENj_1@DYkqhuQ^?H6g#Cd9K)m_F-Qhh5_WJ53!jMEQ$BKiN`Eu zu}ATqr&j?*4t{Ke@yb?i^^9{Cy&MuXDbYa=RTKBbFAP4fx0Elq%?+&gyC~CYjRj2QqJEQQFXt_ zkbeDWhw4wdo8^Y=Mabb;deBP>(iaVnhfrIrT~>t#O1T$L7iOyOpbRi5Jp9QOYGD9w zDv0dWy~9@5$a1@n>o2u3WAt7NV3f#ed{$Ww2{K)vgQB$pYf(m;q;?M<2sXY&^^VTc zxHx!K`_UCQ8W&^xh7OrUw0xE_y#Mo%^2-rQ6riu6_gV(XmZn= zPjIL+Dya5zFh8)5VJlpP5%re4u%M@nk_zRk=g_D-<}Y}1Pir7Si8-i#?p99m;-l*k zDp&8c3-V~_j;QB?jE>P~T%ZzW4!MMqOb#5Ek_n&QOloVxt^eqS-|%(_<$^;}`%MGX z2>`IG$^JGF6zT?hu-$*;{pn-he!rs;j!V{h!?WA}%{HGgQTkwhI|+V-{$r|o%vRb% zooaTI5q83x=g`ohucrRcGl{NF%rsDi#4`} z6-v%%v@IGhUH0lasZ2gC90xF+Oz8@@z!aH!7eQx$W4#nDN5kdG-FZaaxR>TnlWV5I z!sln#Ihbt-zbM#7EMBV$kmUTj9k2zCn#jN*5?hQF>*F=SncZm!ofgLWnPo`q?fQ>07tO{{p5tQ=d6+gNn zXX3UPYTo+milkR#=Gt)OXe4}O?K1vCU^Z3POr%Bp4hk>{QouL#Di#PYp@?v(X(U`{ zvY;Pr^Z&aR&p5;{(!c#}8872fL;N7C;g0q_9vs>VDi+ma;~2O>^X}g`K$+*7XMD6; z;4ys}5}HKAPc5Q4SeR5in-POXjujVgRS&-*!(d!5X7kZ`l~JMbP|+#3>7>FVaHxGQqy0n%lt-!=uw>?&AC+Pfaoi<1T~ zPk0b!2uv5OUT5VIO20g7m~7%E0EiY=Ny)!@WUc{TfXzPS&uRCO6>pX_ zAB7U0&}X(9exu=t0*}%Q!(`NZdgrjb@WVDml1;b}7x$$s4C=FsUSje?Gu5(duvG-wA^0!FD6emGROdRE^@VV)= z*iX~0XP>KfS-F%u$*62N?Q9mP&GIV^QZ?*^h*V?Nd_`kRl@0ogUt&6~ehA>vvN_1{etJKW6JD;>&;mj>9zi2M zrwKAX{kn9+gsc?gQQcJy8YXG-AD3zW;QGjI*r+DCvwgXf*~ORZ*7pPare&91w(ry% zA2evpJf5CBB=o919-ZTHRe2>~&SDyQS5Mf7sv)y#)c7k)$&xbjE(Bv%ifZ9B2p(W>PlqR=w#IVSzPPcnoT!u5H; zzHm%W(NR)zr-oPTeuOdQfgNx5P|%6RVWGBmQX)QM+ayckA2T#zBSs zg%a~hcho^6&8G!InrA?nrE`tM55|8hybE;F&~0nrL`HNv7li_DGFLr7sH9|<=i4P+ zSMo%OEvD}tBYW?^eR|eFkS?edC@X-kwTm-PKDGj-2pHY6l%9rVo)W~$o+VdbY=kiI zJ~zuIHEX)@EwF@yveN>aVpj!%3gA>8{ej{tD`WRb<9Z83A~vh`@J7!xC*yL!zF>)* zi#lBSyhVz>WI)O;BY1nD?Yl!{+SP0mOiznFcUgC^?E+FEP_25>vefe6<8fLai>E{$ zBn}3WawH3v!}uQ$aHB7P^%SK&#=)b#cOpS>EEbPJl&*+VGoAqY!b3Yo@IwhhG($!q zDOnXBs~WQ;lXKit^^Rgqx=5X}wjHtGylove;i)lnBxpc^-^strSUe0s z91*&wqZ}RU_dta<#+FZsErDdWn6d+Fv5YvvcZ^9sPd-eht%hW-Q-ZL$OuZ)2u)R`&%jJ!lzApXyTD~rgcqQ?RCMve%w zQ`J4DVCV!Sjke{jSIK&-HyorDfNtDIqg$EsuKY_S=DDi|%P3)DzI5P)?u4BsG$A_) z8QA#%grXACz)bl~0tN>*FSk%5fdd9YD@P-!%_P5NP*0PvfdxWjPIWLW(~|ANQeYCA z%@V0mf=(em)@!UfLm&=+Usey+*6<_CnmNt+kxq<@BPA~${H997=t;hVzT!PDRJ;7U z*%$gkKATY;M3~yCOWBMz^D*7qLc<<&*XE`n?&v|JPWn&AC^@3LwceEeg*m;?8-i^0QweOKBu-|TbFF!I<9E~PmZ654|CnUm#z$-A~#KlhiUD5 zf5Ouj2gD)*N#V^JBDGkf6&j~u30R~Ybpx*U4=EvgHZK)IWI_<=D6D5Tbr6HoGr^ zL;N68{K7#fe6y_&>->rB2tykBfnksnkoPugibbd~+o-Zxs}iWHg1H?9f7sji53)|_ z4I_LeO%&rfgUkSC{RWgsoePEva2@I#Voxqutf`;kMeTJ=9x(iAg&cXYH!!a&8L7t+4_7roJ-(stwy;cXJK> zO$Dj6_UQ)$jc~wS7-LMcj&ZI2PdfPhFNh{ThpHl%-&c19Uu}7$oX|f@oPn#q)1=F} zpMVoiT$h`En6^!VpW!!O701Yf>^XcDy60ZDe^|z5@yvhujv(2HyBcn%E=QTV+q;Kn zRRdi>Vxa=jhjImvw>unPnYYS5(}D@GFPz7M?j&lXnMl`6@?f8_tI1KNsN29oFK?Crhpgn&f^G zX!=Mw?(;Ldy`ERf;-&RD)0Iko8IbYMHPUf>k2uq2082s-mL<(?Wq$;gTBF z={si|+Bluh*;5dPSP>sY4~f2Ad91IE3*)I^aXJBfbcHNr;}%%$qhf3ZIWs4Gq2r%r zFxWm5O5JNxmEoTdRNlE}v7-V}%lx!%T-&4+WlOKlGY)M|Kzn}{vrC`t?AeyIKOA+^ z`|039#n#Mk+Kf0aQ*g`#f%(7R0<;b`h?jnI?E6Zk1Vd1q1ao@LT2#>v+mt|@zHuh~ zmTYyI$$U{v-m_+ys5UFjfCfoFHl8ox^GbBH14$XkbJbtbX}7-w=;inmIJ7HD%f-k0 zQt4}G1Y|V_899MfteN|e>5lFn9SuaLYS-t22EMt4xqVwexs3g3V}yUk7eb;JDJ-HJ z&$r{L8R9UBIh%^{omI1kIh0>3JpPc2jn2I^9E%{CsCOV9G|Jua8LG>(_|?1(OGkKg zfEy!RmqS}}tMV{;mNXu7HWFqE$I^r@%;@(TpH-J_PF#5yyd~essW4Uwtzs^|TQ$sWIkN&BMSRoGopx97fTb%Vr`EqQx1 zduahw>arz*kN!&PXX+u=I+L)@2;4UTUbs4bI;d01SrRUvLEU-vI-Kti7pPdo!egnU0A_3cuOO18EoG%!Ch7{Ce zO{Qp~TrmlsquPT|ioqYYllZeo8H(D8Eu(jMPhC%XEP}K#r;X|Kv9hu(+OO7Oo zo&CaS(I|Fe@d{vkWa2=n^)LO(@Ys3eQeZdmh}OXzZ63OwBBV!pVi(HxmZ|qR>7CE& zFm}eXNFA{ty^?n|zzYp99^)2sj!C{)2S>&F6;vTjq@7}=v2?CmkIe=0YqA!*NriJF zXSjwxbw7B4MI5jAY)(9_TrP@m8;4%=T;BEYVb)*kX}#V|m}%rImEv~NKbbV89LKQJ zqRJ8x*)4d8(J<`T47!f}eZ-C`@F5!tKliYh=-jaJDycaG6nGqn&7|?^3N0)V<850* zF>723G<~rI;fT!d+8tDi=!X-EvhR*XuL9|nn%IrJB@aSK;IT2Te;!&n4FgFzD60lq($-M*oZw=6c)|%wGhyKGd>S2q?9{eTaoBFf z$6Od`QlLDdO^#|6wip$`Bib%r8du$urGa}B8qRC!@b&q8Qqu<-+EYSD0%}3$Y}V67 z!PL%Eu^5X3^pm%G232br)Eu9tH2G>EG+#9*U8UU(eSNo4a)4^l^1hF@<9L&g!>MP> zm}sV=f=sldQ%=A>J6sXWk2eL}yNuau&^w?bdhs)s!Yzl!gdpFKgR4c!s)i|Ks*~wl z_>|_>Zj$&!0PuCc#|Cdm=;7a-Q;kkI#7rTeL|#MmG8^v5A?&~)oWOz&Uy^#MnS7KQ zY(-L0kly@wOk{%WG^DGVgxQpSf6@5IR6GZK`zr3>P6Gv9OFjhoGjq8LlBsd?^?Usj z(ND>LP|50e&f z(jZyG_3&)$QWEu~fV%;z1Q|v%vRt9LrT=vg(sP9b0_Jg*G$1x6L^Z~uHUV{E+Da$(@;4_Lp$N<;xa}R+FUtUvgvJ{2VvYNPMHYOz4 zIeuE58X(G7UAnm^?W>GQ6^;Q}?O9R5`AD5hvNveXQW|88ONt2zj~7A+)Xa}oYhSqx zTGHH~8zKvX#B#=G>L4)QbzsopYErLLm5z|9EPDrD*olR}Z@Lc@7!&_g$01}D{k zXV|O}Jb`e@&Y~kxo*IhrWq8Ct_4DO@P|PzjX5=cd%6(xx0SLIItId~8jto_&ZsZ2R zr`OpO(U)j`lHV4HxLVxbro$z=_Q%;H4*~GxXG8ctZxDIiFPP)@Oj2IXjak?I;&v>T zG`)1t@`FY50@Y!@PmI*O*Io+m2p{};WO6ALd-#`Zb*AnR0@eo^d%03t;;_J705=j? zi-owBuPEZa!>b@YMJ1wIZdf|L#dz7YVAt z?(u)LfwRX*`MLeHW4l)v3eLW>7FoB0$x8?78t_;Eg|HBBMOF~t6tFxWbIJX}cJWem zN5Ru)oQU|wKi`?prjs1;+G5fk@e1_lBITES$@uK5Zyc(qZ(=!#Z{SxM9e?M?d2nBm z$D<2=dS8W8_YUbV*sRGd$e^a{$%|sp0|yrX;|Kd;V<$&(0^V;|{uN0*ncUyx*M{KV z%#yNT@tEhsBOLpa^O0_0!;g$2LUhat){woB6P+FQuP_aQsXB4^%pe~2ewGp{IU2Xo zlt=iAqd~Uxl#4V|Bvj5`)aN-L6N?R`HHq7GOP(QkUll(dxS||(w&4gO%J{O+RV4-f zBp>y7@$e`TE@gHX8PAxlK>9-~=zH?((Kx<0(12-np7BXpsxFf2n(et%4MFi+`&tEn z*Q^tew!$GZIx&c>pw7+LDLl$0;Lx}h7C;9T4`?jX@NBIh6^{pUCTUXNFrH84!Z|vV z0Lhzm?1XmIr^<*e>eO{o-OhA?5K-&bYi^c%D=!-qTIzotT=dy{^E0^RT~z-4o@{Kq1;$=m;K8X>vUl8q`gW3z zTKn&g!P2?LY82t%_~`JK@gB|QBrTFgpIHjK)d5CK#2=|C&BDjk;OX-`Z?^fuk8|F} za3kydkn_!2plpcCQ$=*gSPS>1aI*U!k7U1 zOr%7jI9u{{!*2C#D5A$5j9Wq{^+V-2?yY0&Pi{jZ?nFd_TxUGXLw3lKI zg~;5UP6E?z>ety0gHMQ^jZSF?m%fg+6#`Z;{{DikG(6UI%CRCLHfZlt;Qlyw0M+T< zIDT=|-)t*%Wh6v5i#$(Sn=c07R7TaMtw=s!IHwdXM2S>0x}_v+?rQjQ=gyr57_^Jc zjWUn_2)Rel;u`ufH~16qZZaMZZSjfbf@A7X5gOudVFwtU(>v~i5_gqJLN?!yZ0t#( zO%SX}G&&OTEx#~R=OJ}IS@)o)*p4ORDCewE)*u($*AFLN7W>?7D)Qm^Wm7lKlFn0g zPKi`2%MJ_w;Q0TN@qggJ#pa z)bHVvuz54*u_L$hAGbhur#5)YSp56!VM&;C;`H+{d!NqLXQFxtmwF~lgAST7vHI{# zi;m-s1%G&2zY@A zky7&d`&ok&A$a`^%~?O=gMnz+AwDF(rak|1-1Updvjc=40XTXuyad00ZrLWT1#UdF z0r8Rh{Q0{kM0Z)Xxn2FVMfZ|Bw$MH~JlQi>D9Hb5=GJ`2{k;=*Av1jb<=JrcX4Vb} z!5LCvjwaQ*{HL!j0Y2kM^9jheW;wJSEjAmRms$i(3 zG*knj65(`}@kUfw{d5?hjLHbfU z88x2-F{(T^Bp32IeB0?TDRi{3lvt-(lzsQ3biU8Xu^MbyQ+Z#e$j3j~ILXCXS8W8> zpAdSGgP&g(6V&}cdQ`Tt4d_islOLFVW}QihwVgCs!oL!bL%J4#S@hAU?=eWIUu+Zr zf4m@jJHOJ}$a+phdc#^q{ik2b#nB~9TF%0VRzdSLGjv}`WC#sq&lWz|&6TafvQucx z-b+zZ1ja3UcPnCKW5cb%fJm?RvADxZl2Z%`+U;@7e_2^qIK90OMyW8WH|5h%yHiaq zxMV6yU;Ng9Bb3XjB)Ni`x&9@r_az?2u(aC@7uZB8gi+luaHYwX<>{-s>ah~@N>rps-iwoe0=Q$Gqz54=nw@9)| z68u7}5&NStl{At}OElt*5R@L7$PV}8FoNlsv3~#N`^`;Vx6*A&Ve}}n`dG6)5KW5c z(+k^Xp0R7(Mg9n=0OkfHv2AqS%2^Pcru`;KrAaXxgrn)`=n6al@UY3i51um*1-3uI zN;X5_=!;)uABrEC78rZEDL*44GNkx7*#Sp?A~iuQ>i4)br=S{@Dx(pyB9%BhTGbiI z@$X0#5$Dv3xyDv9IGsI5mULK?p%ShU8%t1QeUY(9B|G77^3+R(B$C(;kHc|7OzT%m z)l7OhG+)%nfmY$loq5a-$PpE8;!aW=50X>Pm=oUdmv(Km(<8RJI;HS z6Nwqly;;Qlz8jPdF=YGbKW^QHQ<^^Q`=_=~rnct^dMp3)HK~QB7}$%}|KZW%mimqx zz=eA^GHvvttNeW>>n;lHuEfTo^sNkOUl@*BQEerZe4AGjj`p}MaVz>4!oE(Tu6u7e z4PzyFcM|7yDLQR?F8OO-`xUMdb@S-xHq`$ zI|~(Cv^?(k)VcsqW9s?dip+mki&Mj4e=tA!4@)Rd?TGwiVCq5&O<$b*Sz7Neq%`#A9q}`|KmvFs}RU7zitLXYK!WX|_m~!_ zCAd%f{{de`1Jx0~beJMyLD?=a>OlOY)c5}>pBEN8&!{?hOT{i#e$3jEBa+MRE@69? z_)qu*)Yy_j|F4ZIh?~KWFN##JLfU>EPD@`$HL-{?`4wP}Al_^{KgCP8Z`@Qt-iw$TipVd&a+pPK~9sphs zC!ov)W~3Ppwq++oCN4VjI{n|dD=2t`>3-!rZf!(q)_=VSq6IH_f0B;T%0$C_7g?=T zR=fWP{8@=Bs`jo0W(|L9hS{xw_wvhf8ajzuF6Afk|JaGm8lQy$*wdlO)MobZKLO`) z2((jH0iOi>F9?qFOiSPpLly@PagPCSF8e>Jy z5ynT56tbXv$zXS?@dllHfO%CF;0B52&o%yS@rV8o4-646JU#SJo{6gy$J%0HMc3yNjpc+MK zw9I1yQvSlZfd8eelzU-xw>uQ&Fa{M{7YiO;N{^h~0NWaBy;Hs}%iAV>fbm|u@;C@3 zQD3ZQX!tA&&3T#xlR%Vw2XJJOi`1(@o1E-(S&Q+RFOy}1dTKLpo)t5XTSX((z!B2~ z{a!T(e_yfZSv-NrEw4LA1KkYFGy@4?WAoo&FDovXew(YKSyGd75S570SY*f`)8J;` zt7}J+@XVSPfKHxm5!B2ekOGYuN7-({^NLm3&#fbxAkt>7Ksz|c%Lb-+`NFNz*<$l> zG@MHILu%;kOHK1W%>L?AJbNVB!mR;5Ly?_BGv7KiorCYuKk5RwzTD||jpmaegRslX z5k2WcvCcb@l4mz#acWXlXog1#f*?P0YnMF89WaB5ID&a@NvT#?gGNtpE8;srXZzJY z^KdZ@43t$lQS^z2vI#pgXHk@jnoEhoa6h1=2wj^(az(M?wt2SBSRf&9iLwI?G zXpMtYS`_?KK9pmMu|ttLf7|WIwk}4a)-Lggt2s<)6*%7Kx1FD4#wNi3KA-f)iqk`5y5%LMZ4dktN<6Z^VnzugCKH?6ts4qla$)?MYjM zx&A67l$wSxM*^5087h1FsK-n3Gw6|%eZIh!2Ir)0kA*~ezmlu-O*!?4ho(RDF8a&g z93f{C{pSd#^H4lBDFNWQq2bOnfFqZrm8Q{G9E@m3BTUY!NPQlKHuk z$wqVy2xsgA!tc(v+d!QnXB~guZ~ta7rDHoQkNg`9D31dXmkOFYstJ}}+h)?8f>UHW zUInemiJqxSx2v9+4&*j6yfXW*mnGI*Mp|&9nevd0t+JWZ0iA2x-Vt?!?L+gjSpYf)aP*!C=B*{JMK^7yoW zEOK;LOr8j?eIMkVi{(Er!ujT`ik|21meR7?B6Cchr~FO%#c zB+Fi||NYa^{+wt`E?n$lNdtAzw#Y$Eio@R1ZqK9Oh+vI-wNOWo6_$i|65Q1Bz+gpU z^6uiE-fT9}{`06!b5TvbT28}%v94;}|GqJksXE7b4(_q|GtS*c3BskmbDnpQbM=2c zttS_JezI6Y#ti?p;Z}@IF8WC#XRd!Vr$2EcWo@tidxuC%*=h4~x~xO)Dh8cr{HiO! z%BjR=Qo@iYMq;gX?i`3%oJ`X8GA7j}50hrqjYqU)ZGPx8hBPK28%GM^v8CZ}+;hBJ z-cGLQJ=~%6kPV3{gS)ZswjAbemcsAado~xF)zC)|RtbLS z1Z~u=T{1<5i9fH{+eXCI&8SU95h<5AG216@Er*2+7IzZ(ER5yZYS5i|^~G3_P3mVI zo4|#`*vn!v*6m2t#p-0U26UuOj&WVcWq8%n1Jq_|KFEH`lvsn5I-mW^8QOYJW&icq zyg&Vq-Vq-Ybw%=J#RsxFa0(Dh>)B z5!C;+Ox1uhoDy{3;P#9?OugF&SZO;MgM1fR!*gYgKW8L`LDqq!kY(BgjCA`bP^@#A zx1)+KX~KsEgT=nm}&x3D(?nU;xsuu*V*J?I!1X!W9Le6HV7 zU5)3Kbzwba+jMiE_*8?9s^nb|qyi!PM@>0BqO(83{v@tGS@;IY<=>oBI<`WxK4PVOmK<%RL2^M`hk>39xCgAXT^V1ay827%CCRU z?Ms}?PG}-8`xc(YVa)H9uAHcnXrtzIkA=|KtFU z;2MymC+W}bwoyoUqwHo)$bWV|)asI^PsYsRcT6G>W#Z>GL^!*M_CD6PSs1S>;IxTrNsy*Zk&;wH6m4XCpk;d1*pxoCws&vsEJ_1(Ziy%^WhW zxb7BGtxxIEZyXcKJp%kht$W}8T9VIVio*`$kh#5MCyadgd%y!T-g(%S?plRdLjT)! z(nXRYv;4Q35Y2B-shE1(;XoCJ4A!lKB(r>r0{5YB!tBADLOic9#I;NXIVEgL56~wB z7F2tF3z0>Gu%W~6bL@kT;9cM0>q0Jkz%)75afs^#K)B-9BUPt@#qZlD(>`Iyo^0PF zg3_nAocd-i*s|=!*P+#dAH5wQF}S-$$e}Wx9ze^E6{k`XPGiq8C3y~Zg@C^KW1t%0 z*Jnvv+?vA{goe21IBwOni!)$&zF7#}_LWxT^yetGyc!WeCES1-6o%X7zg z9sUXyHj+Ljb2aVTq>@Arrv~6Z!(<; znQ8Q!Y0~mJklx;bO8FvW%S*@`DTc4_QnO3;Wx(Ehe}-cBr2*!NWHd~UJ4V>)p}5mi z_4ej&mQ_CwucV3f$$Ut)%bTOZ!s2{Lf}MtDhnH$5&99408!X|uwRkF5IXbHMx40L)}Y>0MQ{pZ&o_f`^N-u(H#*~Qo9-*c=PIuM4&&{b5%@89FZc@xog}KV494SppB61! zBOqqn<$pP_v;Q{ia-=7{OILEl3S4FM-3sBe2<7n|eCGoKCiUNej07ci+3q6Okg!mi z66t=(lZgg)AmG#|l2B{Bt~u~1m=~Lr@f2EF zY}%8;m8D~%OmZlMaA7qdD@h4~y15pUxO65{yYRWIh}qAPx`*IZXu2L!LXY5>}ke5Q5^?6CED&u@!_JrOHKx_sQjE_(3^aIgNs(Pco7? zQJ8U*@NeaenG1g&*7kaUOZTt=rnY_j1NT9z-Qalu=%d-p=CzYHJU6q^qbuDx1cI76 zy^$wU*{n(;O?BMNUOlH?*yDz0yB$}Po%=!L^2y+YnqOc&88XxUahvz!z_kv#H44Bv z94X3vf+#U%_bH;5U68*-Cgf3W)VtJ0#5LI)8S?q;`*F#%=!U{<=~d71g`6P4VCUtQ zh&=7IenbJ}kQ!qJw<*7Zbc$pPn>4{Z|N0DF;{B6!%G#IWf@Tz^8acQb1Yb(tyzPlw zqPG$lqVXhr0n{VHUQxoQpw^nv43-J8c8Ryomqap)ffJ$Okib?qp^)h4&#$Ih@JnSP zR2)OX9of2#P=pkrl+`?_x6a)yug-O_$!_DW@L|gr{!#1Iyiaf{Y$_xPCZ(%oQ}FJy(Y=4f7DOb~uwezDA9y;cg5F6Kvm!~m+%*$JufOD+IQv%6lxEVuPW+X1MNNvXAQG~i- zPCl@eroSm({Y0Or==na`9Dn~hSpb;aIChBYs7CBzZ(6@A#GtaI8*d5oZnu=4&yxN! zWz21wlm>Kd-!Dc`{<`!-iEw~JdbZa|NNqB$o&DZ`Sh22y8-}L6um)ZKOXze z``WDab*|6${kSL7!-8=NdhXeWg{T3qKVMpy|OAiSHEu$W*1Pk<}x5n zaDE}?-BWnv0{!lOG#BgLhG-`Lyi0Zt0g2A!GE_y4oFpOygiiUyJ8s}srto{;QB|6s@&j+l?626-ih#|K&LQsj6^o4G4?&EA+Bwg|Cu!nUwwg+79?oFa~D2 z=&$G|!ytzkze!w*zJR$bZU^34Gz!BjH!Cm)IfXnn zC1F_G$7^*JtL^VG!&dfY;r`9`jLaBe)FIly{8t82hwthCuCs=Oc9NH2MI^0xwef8a z@?v)~f*TtU=e<7(DTnXg9f**SbG*6$s)LF7)wj)Pz!>DFHV z@-vgw1w-P2Oq0MmxW2LurUCNrIx^Fu%)AR|qy4dd0nCK0TEK4*#H~3j?xJjO0~#Es z?rJahi#wOa7j2Kv75N>1PlIJ;+`lMyrj$#-@*A((# zsXS{b>ZS2QXdJsI*4nI8M+EdeKX`Zv2PB7z-zK^|0j$q8B%B>j3G+Ak$F(gjX-bB1 zstU#wQj>W_{fOj)noJ}1+=0J7*!GvJ+`yF1s`i4J9mi5OIJ4H(Yn5t6soXmN zhj7^g88tMP21U&|h?BI3LnAQ#kgy%-!$hu z8HozS){tp$<;^C=N0%Jb<9Ec4(Bfo9ncgh z2EAj-XUD0TuyZHk7Cw1Pg=7xNc5B-&5Yjq2kdF6SsoWqWHJ$eSWp@H4dTB7j4tmX?ft zpQ&1C{&QwIkf5f_sdlF ze)n1WiQaYmwnCka@#ZmccXO3d9bb4NOQb}qG)7_^P}Oc60Vn7@ zL+nIOg>5uTpWoh7JKAwnk}ES{h|^@&M{kd|7rXnPUA}n+!bOgP+f=f8FK>B~x0{B9(eZM}z zM39VnLQt$epCtbG^IO~*`{BQ!f|n)}^{C#Levrh)bG*MuVugPz6>T-V=R#KR>1M7v z@?`0mFz4u7j?P9B#ocHNAkjurK3E%Tx>Nleva};3Lv$O--uni9fRl zL!&hQnq_uIwa>XRn8V9M-Yfi!zdPNnmk=>hgny)0FYiJDjB2T=Xv;-d+lW|Lj&5dk z-SznP-AADuU8+CiAyzw2!27Vvr_(z8wNYh9B+e`45|T~9?{xT1(-LV};L6PldO@R% zaEi2y)sxDiU5f5?EDG&P{WjIb(_ou#r5E}*7k1cbXJy7WqyxdjpVHoFaL;XtLq$s$ zH_th43vH>xL6qD$;yV3ID#1*H@;)pINU-*g`)`r_F@<8D>dmd`xt(#6YD}0dLehUU zyuyF6Wi^fD)<=8Z&~pm94%o!~vt`R8zvHQn}T>%i4AM zfxa+SmJq)M+4Kr}5pFHAVeS{d=?dW5c9`MJ7b1o2Rq|bx@wV9FeTI59UG_@2;Hq|i z`9+X>plY|PQIdf+iy@1>LaX8W1L0L*1uSkRzG4Vt5vuD+u#9g30a`ord?Wm&S5%GU z?mzw+73S4Uk1*nSZqNVA{IglIyjZ8t0gEiHP5-otv!KEU5gl0nGtuFBPoy(FVy)Ut zm)&%{=cY0omscQ}EW_Hi?37TA7d#l;x1PW8VsCi{e1VcT&QRE7sA0BK&n-ybLqrC6 zC5wp3J-#;L5)~a$+GFF(08W)j-^ZnxKfxs;zGn;*VGtfEa>UPy1TBTYA%Wq-%Sle|>KmVjELAgD& zMN@!|L#54^x+Kv&+o1%Fda3eDtLF7Q9KV1TK%=ae zx@DC4IbOqS#y=nojWr%w#lpIh@?sWH`lUSovjZ8&6a!ut-8>wM9p~G^7#>6YHugO48t@sVCw5HYCoU6U5_gW)N`%RTlMdl^6|r z$HjY`BrTx199Yo-wlQ-eQLJm4d7Q2X51Mzrko|5J*kZ3cZeb2!ON8|1VwTGN+TcZyzo32HZ1A}e&YK< z-7hcR)WgR!9FvcAqPe%bdIgM8&@=L`*+9Vk>A;Hge5s+vzSo+cHXRMC1n}fCw(N3?wJvFjRNR}tiThPr^ zEAx|?-%b+0dp9Ufh1rBSSqX3xGk@6(jcH4Ndi%6EVRnuXWkvL@tnT$kV=rMITjb6{ zB@j*i6w0Z38Y670k1m)Ql%*p+&nu^IAM~7B5ak+p`m~K`jW>3GF>m~l5_lWy){AZ% zl~>l-WIrK()8*DIgijZAZxI{o7kD7Jr~)+r-hT&)cB2Elq@T`k`wD*TRJsii^H!Z? z3)H2*YSSZiWC!X}dK_1LgdVrQCeS2oGWjaH3jt`NpdT8QYhVQN2IA}E)I>1XmbuwGLxoO+nl@RpEf$X4%3LHFlS2vNCKHb z9Z=Uli-2z~8q<%bBLl$0TrrCdij&rbaO^yBwY02*H*M|G^YggGQ>_B6zUA?;v8Rtm z&86Xr!R;$_2A#q+nc^esWo4X^$qg=+t_dIpZQRod;0sUolbAKjJ~twMq4o)#sgid* z(#pv>f|4)Ep{fXFC?!1bkCna8yHVpjNG%NtK;iBF4zaMdIZY%|#^=&w`r{lQ z7ymPJ&clo^$4332u&g_~SHb*=!67*`b?RF_zD;Fv%(J2c{YO5F zYNfRl>v|OE+kTt$Rg|)ACOZQ#=wg8}+o4-_-y%%@n3{i-CqD1ZEP>3zSPm^i*J&M} z{|A2;ITVUH;CQY?->*gBThHw8pU>I75?uwJV8$-kAdsoG*{cNfQ7oFo9L0w_k#WM) z4DR%vA?}%WzQsPs*FscxV&FV1$qU9fL$y&zYx1k(4W1a^(EY6QjvlJaS^dGxq}3p( z3br}8St^qWTZgp;CV(sgJKIASg9_;B*S zu=iJCaXer6FN(XnO9++_Dnegwtf#OP~HTdr0GQAdW0K#wZ>^t4a+tPMUE z9am2kPC{3eYjT~>N%~dmtL#|RLbI2~9n>Kx(tj~ysB?8gR!&<%(A$e=cX$(olSdvL zf3EB}@(O&@6{(jZDCsE=6R)H{9`JJqEmVN6p1@OlSITlPg=*yKovAivG4QB(M4(sc zAL#R;2nE4I5-t=^8$rJ=S|pphs67Cc5cJbJ{CZ0+J=xp~#9CQ;4lqUdS%fENe-*GE zoRuA4DjwcaV&Pu~sh4jatWS2?C(B)Btd^XU8s-XY09RkN1Tf@nlRT${|Q^K}Zi(H74@nngT;p_hfm! z+!ueq^05Rl8o2I&I8C2?Ob#(e>0VnTErnpY@}Ly{*u^E%S1kJ?bU+y2{eWJkHnqY%X*r$Sl^<)xNO?Bf+ul)5*PzG)ad8Y9K#7Zdo5r3%5doNzot&-u*(OQ@R3-yuY z{Mg%gafyR{gQ486Kn*UtLR|UC#9I~B1Yb$`&U~)LvJUn#h=ipWp(Oz|T%?LZ8Fj-2 zXv%WPjt_;oU*o(pL8cjOc!G|FjfY;q$o@s@;2qnoM!db4Ps1X_OewloL`r|(^=iz% znraR{XT5CW9>32KhTcSDaP0qm_fM!K=JDA%%&ZV5a8k1UR!3b`N~QntY^rrekQHM% z|B;!!!?$+UZyr60aK;h-#LsS8EUA?lklG7+UR7q*SiNWM4atIq81g0&xe=bX zse&H7fMW*t6#9zU!vm|B#kKxpnlcHN{}UDF$q7iK;j92!by5ynWwhadOuVz zMZ=LFRQhzsjjfwXz)=I5g4WQ8%oYPEhrb{Qkd9>g zvPwenL-Rw86yn1X=--`l-UB>kxw2X4(RLlL6wmei)$Vs;DIT@Io4L^0%w6YsNvqRB zvUzY9+_a7`3ztGOcd763N05C5Tl(u&4A?Hu66Y ztqqATq={{0k}JBw5fQKg`y zE(wFc-OdO}Z(sG7;FEtRw})?!NlA_y;|gnc&U;qOp6aigfRx*B%Zd@(R*2qNrj?CQ z2(rXsb;Dg$wW#Bsl&g7@ev4(55D#JMu`vsIjz`XPZxt{F^7JU*STKYC<%SV*>*ouN zl9L_v#1$IGo~6gcD{Acgx96kgxBmL5c;Y>wdPVW}T-rob5_7)52z5StE6Ueyui_(H z+n0f_RsI5drb{+a*@k`Y<&`G|Wk2Asq!aIgUMN3x^MBUk=YZEA*e{(rq~{SP`&kB5 z*R*`j9q<5Hg0XXZ-f3Lu7f5#Mb6DN2Qds3D-2>9qz`YQ?r#PZ!Qd&yXl=W212< z3wJJ;z;w})2U_u#iA?7}Zhf>&egLd~1`(j>mskV>15Ku@8#{4pEq)cuh_oK-(;rDB zPsAj&Gt*xRI6PB9MM`S>>mt1A33_Y*oMyimZ-zOek)2@5Ia#34DfW@>k4QS?txlO9^Q^?-5fUwFz!OG z9v!Z1>u6k@R+*NsHj3yM^*Sbf{A~Pcx4U`i2q?yS(E=Xy# zKI}+GiZtU6Ian_=)rBA-_9S52YJC9t8(qXAaqx4AMC=bmAO^;LpV%?($DCwaf(b#m zOGY??gOyZRO&%))-MB5kTFqY9fho0RsweT*&!TX1{RTkr+-@J?W!7b$i;}6TD<}S^ zrfmjs4h{5Z6{+@0qs@*JSevNaFiLbM@*1pj&g zH!TPN*F}%4G(w7%_)}3zDbRi|_5QK5m6Mr3jUW}ULx~9Ulxg?c__ry$wGBgeuI&0Q zN9|E9Ikyf?1vw9y@kewmr_+4zf>=ctgmgg}LnYvN8ToFJ3txU-)M={h5Bjp48X(PD z5?c}iixI&gKDaDe1HU<6XJ#~_^^mO3N0s};frf7bADjs za;i`8{sA*oEaj0hDdfg9Oa7R{w#$I%RHd?G^Z?^`4sc9Mlh&Y*>}H_%Zp(o83(DBy zCD5uk^0PtX?TP5Gm$b%B48QlI*j@$o-e>n0bV0hxF0^d=DnbkwOm>UP(FZ|6i(Sir z@N0`@B%-eO<&C!1l^?+hkoq&an# zyHi>U4c%e$69Xbv1+Bgs>}Y@DuF+@~?vM#&k!x5X6O_4z``P>h6mE$bLcWFHE3)g( z5dxNHj3)QywXT*fuSF^({Wkrwh9q9a)2ovH*P^uJVv@e8FzqmrUFO^A$c3r{nF8Nd zb=j55NMrlA=LlUv)_%5_^T$bctW`0EREJ~q6$=zJ{9;-xiosk;_hq51WsV{dPkLmR zwiS2!ut`yZ1_-+x=59lg4m$-HWm~aG8`0qrWmKYRvXI=;l8Ic0B*Q&6_@(HU8zGO) zOUWy;uB^>pRq5$o68Tk{SgbZStc3qHcYW81^!v*eh>E2_GfPIPUNdT=m+jvExS>M? z*3?yCZVF5DBbgUZetdLcTN~4dz&EJ@b*Z*N$iQB|&DcE>e%GoTG`JN$)yx{9}nV^&V z;9ULxM!&`$L&h*+IZiOL<;D3d=pG6AKq}OW@zrNn9yVWX{~O+yk3fi1c*RSG{x0nK zV4X6#Cni!T?f)#TRWq}7yH(+hY{Alx{jcRq;0KQe%m4QfIl_uqg8fG6xbROth?r92f?C%WK@& z+I$e;Bs4^mzfx9G+_Q-L?e-jp*%X*S>LDJ|ju2zDpgb`E5JxC*5Ra7SvsJ#VU8*4^ zu*xomZAkeoX3-xCK(VaZI0Vk61&<*dA_6zq*9@%QG-)GK->Bq0^U6w4+W!iy5{1I( zYpsMtRSMAhvl{7L6?h1T-yj!V?@v6w>AyS~dx*e&%)>>ogM5%;XE0C;DtXta0E&h^ zQXPNb2rCYmr`~nV{-J-s$KmWV#0&x?evpDil52D2VpM*(i9xF6I!NgLR$`F1q0ljU zzqxd=p=!s+>k4#0=?B-9;f;rzFJ8{KIbbsk)@! z^+nC47o}g}xeU`^1b6kE%CS6*Db&dTYJCS7qB`vlNFPI5RrX9b_HulVTD-UT0LR2i z9TRjC00>wmEfoWqfRmmxn0QXBkeklAOtgHLeo{?hiRCSIL;FHAO*4>V;;c(h;Imn zlCkT*tbn%6eQ+LfL0UU3;5HE*+g+5O0yOu`@_E#uT zXt7E(h%Q*0*{CKM!=E|LdtuDn0rQ%aFq_vrIwiadx*Gcm)r8IRb3K;4SW1bvWuyM!1^E|CG&gh zPgOnV-Ax-DylA^s4t5uaUF;5%RVzfs2|06rtg3!(yE~E@wFrP2LK9x|HQX*nZ~W!! zy>VE6tpguDam?YzxjO>Fb55Fv4~?AjFX`R}<1>f8*YF>u1hS?RsTdvQhlUW!sK+vY zQ-ksjl6{(L2N+9Fd^wa&L?>s03i04o`v~IFFuo~WSn5e((Bq5xZ=nN0jC|*d>=y^~BQc?Cf|QA51VkPG zG**p>Pi)-)f{>%r!zb3JF#nhSH_8ddwgiu<1n#pu9Pk-NzRrQbNWq^Si8=6ZITn#V zvOHS2)y-nOSho!%GBWxyJ_wjo2x^>EOSbHr{S3}cEm)2I(YYtVb5c$BN`%Eb3sE%! z42LD17xO|iI3gI*FXizrI&08emC`1n^Eut#q7ucv$yVA#5!bC}lr$Vtw(s}+GmL~^ z0QufkpJCU8c)q^TTGu&XH)Umw7kJx3FOObV|ffM>W4qh9kmW-=g$iexwoRtHJYu>Xb&BHz$qZ$%Rn)=we3iQHR|cy!!M ze?g-wYIBVc z8YZ(!F-la_qGmCQo99>aduTW9S-%4PjCpj{EGp_R#k1UxxbgB?M8bVDXbRC@Q{F6uE7u2KmI&L+F z9#Lu3SlPcGZ_;@UOU%J|9LoVl)U9KZE_nslu7X7d(;Ye8$ z6irnVgh3PlD3LX>r>ZP||7KC7)Q1#2yBF{MdDWxJa4uBC-@;0B1yyjXca2g2*|=O+-25b?brLBk|knkI_uuyK7Y3#A5ll;Acq)I8SpS&+O(VywXkFXe zB4V1^hSljuUf4ibw-KFyXoE?$SGLxY`{{{1u6(|o+e689H+^H%3h)6duSo#b%Osye zy2{03Kz$IDZ2pS;npv1Uai)I`18*Q94etgxVPvw&5PbGyQ|l9|w1$XNc6=~ACo+Cz zlShu?yso(4m3;nD*rd{e5CmSb7I(he#_f; zB(E-D)PMiYp$Te46XL97(~{$g?UHc(y7rnbQnz(rccRm7I4tt>Gy_^SN0IR;5v-~@jHb!>kCg6&MdO`$*XHllmQja5ye?4MyjsdXY zkX0&^`6|^9{wgZE3PYpo7n0A{H)RT^ux97Zba;umIsK);{$J_dfgrmikC5;MZEUi; zA~&P~JyrV31zJKJULSHEitxh4xKGaV3Ij9OO8x8X2|-}Pi(kY0pL$MfIYpZzt_!@x zM0(oRJ1>Tajl4pBpVm>1^NBxO+~_~G0-iqj|6;{9IY$P7-DPb0MVEd7*~L9yKZJqY z9now(G`CLW#mlFuz`=&zvMB53OnHk5U$VuviOiJa+_>7B5p21=yXdI7PiF$kJl-7_ zQJsh|NFM7ug_FA+9Zv&+m#a6fq$))`g1J3kS0ZmC4=x-NUid(PnHvVOf{(Km(6 zU}8c{jrPmgC!GzlaP{=>?xJ5Vn-WF|JuOD`UocOEZFw$^4+b!%5KIv|3C`({tvIMi zyD~Nwl!+tqU3s4t?T>YGg|s@x{L_&M&5@s3xj-u zQW-B9+f;&3mb14w{QXlF-734l9f}HqGZ1f*C^W{eUz+@2+k6ekqMs0V=&z1GGY?Rk z+4B5gVp}1juTV5*lQHA9sjJD58&_q2P7q0o?B44sc=w}=oGCx+=jnw{0$RC(y6J({ zw&IOt1tBAuMKueXHRxtUcjX=S>(fQbMaqVwmj89 zBGA>ajkbJgjAez>i_v#g`kxBip2p(q&~4yXZiho`Bh|#HxHQcF{-B30EY%oOpW7^a zxTx-v3q|qS(o}p~A+`L0xeqZl5=#`0^fnkhH?eX#`h+Vh!u5M-uy`Z>-ko4txBXKb z9O}^O4ZXNK2GIk>m?c+jR+2^Z793QwfMHj1+40()tc+v z@4$OH5GlR2InrqZ1@2sPYmV?!0ZZRB=v|R=lZVl%o~4%sOy+GaoQv(KUv`J56mC}2 zy6*6M{j853k<#2~qP#}xd33x7Y@7u;45#Oc{>nBSxc8ak5+#?qi8(uVeS0w11EZ@-kJ^MI(p?WT&VaZPo;_HXj-O%{( z7UpwS$Vg&Hj?=uauK+b)SAAsK(Wt0 zUGm~nQj7sR&V1&FAesd3)VWJVo9><1loDD^$Fs4riUE`7FDJ2ejWq#@vkU7Ho+l@# zWx1@2zFYf8uvAH;e(^r@Z#oJp8dl3#iBZ%Ye@Fh)qgA@HvrKRRE9w~Ukf1;*6c&Y& z^oYXo{4%!Dy;zLOZmW@2Nmd%1bmz-Zj5rkQC z!f=@agbUjmJE4~#Jdz$#ByAv4%Bx65q-SO8nH%}}Agwum zEYDW7JZ2O>b=a`xg*1!2`^EXF0=$#J_uiy0Bo|*j56fy3#X0(}!B^*W{4`5jgT_kZ zR4M0BB&kwFZp||$>_9;6I@Y$L$O-QYLU5lKoJZtkBrsplCo_JM-{f9A{P*Ik*dG$_ zIm;y)B@HY(a__?5;{eSN&vb*Kk=t)UTQ&$S|8XyMNZ&@k>JUmcl{fSzo88+vS8~Mi zhsA9YrXOL%lvF*XW%D3LpaBZbk>T=Jz)z&?*DVTdT3nML7bRw4ZZ47p6fhfV=_+I$1YrdE(>OP7e5AkZvT3Jr&RElwE&Z;)`2z~{(>fvC> zcZ+B`>l#vV>auQK5a!Y3RN_iwbO?hi!eJ!jsVvra1^ns|SiTf{a`S>T%y#L&M;_Zz)`|+B)i228d*ESDNC%9_R-pk}B;YfGjz1MOPV%^5*JY?0P?p=uB)=h?&A>bZPT&uy4 zuoX4yF#SQ~kuET3Bivsr-uri})&|=)iWxPAdxORCxq*6g&4`a1l8Lc@u?bPZ`-b}) zQbt;nJ(P)$obaR2I+`|?%2__iah6K<2}>3VAAZ8u)$0lJY!)j~eGPYE$y}mkoc(tM zLQ{+Sb>Ks|!tu?|qSLDUWuWqS>(fIAg&vDb}k&qIu4Z88d5HawiJ!@S>YY}^-SOppqJyAdL9#nX@zx~ zf!A!X4x%+{rwrTUBB!;j|Tlh-#9ari|{om)A63yY(sJU(}OrUpD!k1 zQT(aRc7A|H2$=u)OQ`IhT++D|SLCwG?J7n7Sg;h`ml$v@WWZ`5QoZj(xcvXyFjn%~ z>1@fB^e`87cue|^STgILVPIrJ!`h+N<3VQ|owXU?MA)YUJhYVYhrUylOLe}x_S&84 zl5TYMC!g%%Wr&m_lPm*EIHYt|x=2+HZp7yP^soN^{(;ntQ;v z4Rp2jPP{1aZxZbo=^=h|&vfBT&gD$opa}Joxbk7Sd9j?Oy(0P_?ruyF*{ffl@B*4L z1(VzRN6u(8b-jacpY!niMJoSybCzInR#XRR(mK`l+1o!uR^t@UF1C>gM?Lu1wxK8H zn^aH#mYMse4BZx;oL+R{l*!OY9Vd=__@fK}6`cVt2jYL&-BuE{yI$_c5WTvW34BHq z&(He94VpT13OkE^;e5|F)N%DaahgLyeA7;35uSw5UW$Gl&}aBzc7EF0ZS>OwGmmkl?E1jL620!i&J{#yXja!!W zmfC=baL})1NXrxn=m;mxxfF*m1#Trbb$aXyhq9f+eB7DGJD4i}xOlDLk=8ESVR_M8 zx2`P1cK0cmYZX%YmtH+KFK?-ECi-Dg(O9{+eot2!M zvrPQIYCG_O`}s_TSt|NhIS9eB-?EQCJvTA2k=}J zXP4=~RSgOtcatzqdhQt=sAR$iUGKQLWO#Nasxckda;a?RneCShoQt1ZMMekP&O&L- z9|sdFN_O>Qm^II{fvrl^hp0ByI4=Y$|5^k^)N}K#k&Qr&u?Y)2!z+!z1K`xU%6`>K ze6w+0d2idtI<9M+N~xeJf~XA@&{x6|rdwu?DHgyY2qQs6R*c2vWiA$@%eCW-CXK@a zl^x8;gmfbs^idf@cSZyShcg;8yKJB&!FQ%9U!PFM+pFE&UE33IF%*k(XevOvHzfa| z1)pN%3HzF^5+Z+pr0#%DCpzHeZ_NBcH!?1RNijt4?{zlD2_qH~(F3{Cg!j1TnGYY;@ez0e(NZ{%aB?w~4eKNBRj(zlpYw zzYXK1-xmfWP6uuGcu&{ad9BN{5E%1*sMBdvp42W_Bg{$gUV=wK=yA_$yOy4B)x3W? zi@QltJHm(q5qnp}$HQWPZt%gvdV@syLs=2}U=s7;8|GLaboVx1Q+m1sSgXMaf;m%n z@X(^)46^my9GB@yGeI#_BJ?pbAjr}=W6Bz?F%n(@#|f#H!`iSM%(+ zXut)7K@ZiF7kCQQhGxm66*8L?xD>l*l^wU!XL-5+n}or)F;n|dw|<`Byz~IWlDec@ zq|uan^7#VXH^x$P&-R{fhz~IP4c_yCelxq#&E*3+LBQr|U=lF;uuZu5>DGhPAk1YMea!o#*?7YlZFluAb``K$H7pEBa882!pJrgCt&$VJodS9UDbV=5(L}^R)nK`j`s zly6`j9WkSk<@(h@MRoLJT`;7Q=QPg7wPZ%R&0Y@J_clN+uMPZlw|^`#S%UJ%CW4IW z;_$Hv7yCF)>|Tq$WUPLWvfyv;sWW`U$)0V@WDUZwk z*^15X;+h*` zs&vO#g>d1x1$TcTvO`0}S$xQ|PO_tK zO;SPU3z_JUek4rBU!tUZN@PFYC4iIW4R6&R{RnSE8Wi&d7sL|UF6jitz;T@4f15x* zo|Tq^^yL`quCOzAmYc)A{5FhxxHxTiaE@olT;R0Baz)b%x37<1i5YOjuP*>fP!6Wb zp}?gJSf^kI1~-iScDyciK%C4uWMa4pMvg0!(6~EZ;xq7sSIaVWA^yl%BZ?mMG-oZO zapY;yHYNyfAO`9vu(|=R(|=?4kT~JL!dWWlXP-vH(g)n5VU`tbKK$d+a}|oZ6fdg# zal$jwE}*J0R0VJ_D}ME`npo)KXBsy6q?wq&UfYQ~lP#AgqOW>7fQ8$Rk|9fXkEC_q zE&|1f44LHlMNB%=etl~ASO9U>Qu$55+o6tce}iO$_i38&yg8EAxVlgOcOWE|i&;i*-!X zWX;$U$i;)x+%3{&RWd#+cW_02h^UwMudCO5Mbp52a4P4>{g-VSOh%W@QG-MWfT>9Q z4Xt5kOK9B|^d(69+E=60C_5fKb>mE-^&wGhL`xYLlELyShPzJ=4}{N4AUYCR3FNNO z%9-Ix^s6RGHmmW-3cR16tjw{cUVrcPnXjmrw5@;rZ!kQvA3carJh*0(DUYo%_$l=M z^dU`k2hYjZLLudNzCQ=STl=@9l5qZ`BfIW+#nH^4OX*h{{~b|51R+Kuar?#Le_)$= zKss`VpNJyBdB5r1kaPYKlz+TRg!rG)6Meh+G<=czjH)>rblVoT7H42|Kk~W9>POS7 zoAWHWLEU!64&KA;i5TZSn0u(2Tm7R!l|nAguMWZpX_ZlT!1-I1cO~^#2dP^#(z6u6 zMs3csO2NsDr+#h>woucg_wUht9aI<~ZcoE`A9@ZXky0m7`Dje%&ozAMXwU%{yui3y z6vQVY=|GS1lnPII+@c!jQJnf#T2{AetFYS?bVBkbJx#Hn<|Y^cO6Z8#X>oOEf3QIC z_~8hBWMM@gqZ~rPQDm_cc)NlBV=`&j;ciP0verCLL>wsnth#y``00v2%@~WEqd6ei zZL8Yc8y~w8{;L_JP5b2#MTDHjik(Gx=P3)FD;ArEh~Y!Gl|JRim&ULL+S#j}B*7-E5Xes%Y^O4VTX zXiCVV@GFhax{O+{G0-p%Y?HkJmgg|3+ee4}^|DLQO#!JW-U{*dQ9tMHF{lh-dfrc? z?8>*w=JrkezrIWEzg$7iTJ-MEt^_ja$X$`C_ap#D7;|P^G%BP@eAA;9JcH5a6 z_ZlIu+y@^Ya{io~%kJ^JXcTiegm^B?$RtgEWpiVYsHF(My*O{SD6KA8fonZ&|Jz&> zgEOYWOg&aymIGrdmcRhRPHb?IwNh`$R@|Y}iD!YH)OCR&2A)$+2yjS896qlb>E?;S zJjEB5#8_r#GDL}IZflsyFh6#l#0g2KCH7sKrkS+YmfEP~nKCh9^)iFRhkNy(NR&R7 zBF#I=5$m4({E~=XdnI2#deNgs&%6vw|G&H0?4lcEYsNHt=CMIO%JdJ_QZ_e*`2H4f zIhp0_k=li&_~(L|M>CHogpd&$=09IrFJMKttoOs{7=sOqyoaYs8P&GepJAmqyMMP3 zyZfgG>t#iB&LBd}j=+}fLS=)|a-yhcBW8HoJgec60s@W5bAkuPAWL%svx1k=-0N z%d)R!kpt`zHP$R<*~8YZ$y0EtA7H@p=|ZTyWSE&g^yXg12)-W!@e<-x=Ct&U{u7vs z72F=9_4q)DiF9aFRlac~cwsy6vj>)ZwDG|dsV;E>F)7#P%#sLQ0D>UYNjXgZB%N|4 z76JR|PR4>poUQu{M$8ruh|FmO*v|m@&D9dq?H03Ix_)SSj&MUQABv3+f9|NbL zrDLeCoXXbIYQV%JLCfaEl1Kt22hcP6KhOc~&t^>HiU&Rt#R;-G`=_ab}RJof_=IhU!i^M_}vS(^?oP>HL$>$?Ti;w8#X zxkNg}v)#$%<*S3Q(TsIIaceEtiSFM+qf6KQXVkcqOkHv)L*lb;+0v0@f zmjA(2>pc(ZD93$^DC6s^&*g?-RAjKr@mYRuE(TmDhRU{q+;f3>VoER>sb{1QehAKBOS=VHv~6JZeN>}>c%<3r}y&c1M=JWL< zm4B(DJD$_E{dl4kXCO4rmCwe@{nm7@=wXyL0$=n2d5`QJ5z_2cS>CuxQ51Iaz(eXg zgTd4jpl5YriL@H_->vcir$0`(WZpd=nao*SA=IB(K})lzr~O*=FSZ@NnWKH_pLvan zwbXg5wGiKQL5R%zyYi^sCwDbkT;Bk&1uEfyfwt#=_gW5vse*d*{|^hG0pVg!Rru95 zDqLwj$Z_OvUX5%qCIyN2lbWslq29RR6Ql1ZTqXwZ8@bVT%8rYZFu0vlv^^S&WnU3yftVv5ta=spwI& z?3RW#2JI4p{0>3A!#2&PEtT(yfh9?*^SV+Bd(M-goh5cRHWLyVQ09Ljh5s+4t7ZL*CF1a0AF`5*7=`3>Zi(Jl4Hn=3dl(%J-EShDe_a#WE|EAjKSJ>DKSBc#12ex$38`H&2>a;m6+(WsPb`G zN4D+wiL!tKY7`*s-Klrs(0QW@v#2Ex!&Y4C(3W(3Lb5J@lKA6E6fv@R;jg}6!%Vd? z@VRV^#+hBNL0ofmSzl%bawuU>ma|>&**tMVAh}4rc>>3u?=ja6M$$aPuOK+p8@4WJ(!>$#Er0b%{ z9y~r-v7x4p4IEggBp4>*X9YYJO&Kc9+_O)T-&YjYuSt1j7ee4Fk$VZ)|HLUDQ1K3f zAr+G_*24!BW%GZwRB*n2H(yB_h3V! zbnIPmUVLrB#aJJt1I7kP$y^3SP->s&bxH1-pQADGx^Dnrga9s#_~)(RQ(SrPNXZGK7GnXZ|Fx`N z28OpR566RR_Z|`0lHgisW=ZFB^SNVG6d#-bY%YF;nZJ23GPFNNfZ8d>O_*`LIPxA7 zQE(oXcZK&EC6c)TqYapMA*iCIJ63$G!go<@WcT|-o*pTXRH4$?eWwdv6lF`(8(6rH zHx?MxX!9ni)Q$oa4thcKgWIBzbpx-7o?XybWXAd#4a_vlZCueX={+C6PwqIr%LeX( zI7%>TDZ#{r?{`x#ReR6@p#E2Gr^MI9C0H03sy3X2tahGJbiza=ctTOp3%aDcAz#Ko1Eidn<~C)zYT?w|==2Qz3VAQ0Ix109m#z4}L;42D*p+diN~6gtfw|DHYp= z-9#!{XXOU)X)EeGd?wW*xz2IVtzwf3tWK-0*>5*zM($-CVsj7&sFx8!io?cIxv>tn zEpd+sj;BsjKoMD2b8K$I~qql-}=ud^ANj{{=gxgnRB zlbkr1#!X7^Ym`eqvg2qF% zd)r}iULf*$Vu2O}m3ZOa4}l)qq*cusk^%-V182AI43W4n!n2dq-oYlu`dUovy};YQPpeBuY`T%f_1SBZ$7}G5LvyJ?@oCF}=+@a4-tZ|c zCFb_-5~bHG+lx2-IrMU)eV)IE2b51u#=NZR-*{#g_u7&nF#%01ZYE_)*pJfiA6`3- zl_X4E(4yKZirbE_OE!JGm>l5%4_j;hfzOo7^<^oIr+oZEqz;{Kv7vJjixhIb{=YvC zv2ozAbWi?N#OG`FLCt0H$SfZHghUUoe5RrIOhFUI!9hDlQHb~dMw|H;1w+0#5uf-M z0a{Q+@4#<`Caj;^f5@hNvTfv~FlI2x9nBS@aRu%^R$I;XzVAn6tU^p1#+=|L=t0+0 zcZaz`=qV8ES(CB5-q(=bMw(Yf4u*%DqXH$-&b%?bp5IpmGs!*JR(DrdCyMolhxKV_o zsg5@5@!UpA3)s)0n&d3#JKFX!80U^a3v0}={g$uBi8(ai)v&B#Amli4b<%MgI_6^e zvXV!UJ0G<6c3Va~wTYta%A+#FZtO)9w)kWhR2tFNT8r6ql*wm~^-@4y#_cgrR}6)* zAS%ukQ>#kVyHtC@mePa91Q(#dmQHG@3xW(0pvqxLJr;pNOt`9E%F5vAh2t6?jIa|`(l8S-acYs%%d#AjLpRX^e zAMXlcazHoCS%ZBl4H4}fXoHq^H|Y@At%rn@t@jS`(k&P zVujRd?gR4tp*1XZ$}U`T#l`=C7xZeqA-9A*_d|D^_X@2j9luszH>Hv;Yvz<8(GJDG zLIg)?fwZaugEB=Z7A161=FVu0wS>qzE(BhVD79qWxt%?aPM)|;Sj+P58G8m-E-IcR zCV0ym+l903`^3xf)xUmiB&xP{mqN+EuQ7jnWm~-as{sY>#v2#hRKdQTk2INs4A z1IBo?l{ICqJ;r3>yEsIfI#NZ53~#}2JIwWFv@<8Rl;5}3^{K7kP0y++IQ8Lpzv84A(gszZn-71&zz56jgT`67e1m_z`ri#+<9|2#FO6sJ_-pt(^F2E zVioJ~mu`9A%;iOg7vM;UXdR$eo|DuW zPtjBItl08fvc9gNg8PY^p^xWj0)t>7|AFe9E|(Thg=xp72MQ~el&@%C#yN(5v4LSis017>1pNo@Tl4!&p;r=bZ~iA4 z6tw!xEd28MYZ{uCIl1}-Roj1kS&B^LTzfIk^iO9?&-M6qPhnl6weJ}bcLWtZK7GFH zB0ITUEf4zFbAP@v8(v=P(P3cX#l!PXzG!>9; z=)H*a8j65O?@}ZnNJm;i2`MN4z0W?M&KUQ8yZ38G#>%_Kn(taGbI#}YblKhu&H|*% z=j>eBjF3nxDPV=gv=PI&KrlK_Bjz~to7g>ocJgPQ_v(r|ABGiZTEDtYwtdV~{m|j) zYaP&)gH3#LZ@4za3gdmdnd^ySO!CIP6K)^n8WV1}A$G(0C=DTwzWaF|KW@kwnA*8+ z;$As=ZNYuee^ul$s((A(hud0(I3B-wH%aSy&c{!N>XX7%=R`PymwmitC^6hjI`2Yq zJV9Jb?M0(?cBiL6t#MfrnjL6(g3N~wj`rtmvFwLz5^d2=JbafZ;M=g`C+4Pq*UH|8 zV@Zkg!($-l56QXt0&+F_(>n|5Ihy%S?E_cy;Eur>#}6)hYzB06UaXtM(*F7e#4~{C z-fkwfl5W*d#>#9aFCXkswFh&*HJzJCiR1}evX3xAPNx9Pn*@*i@Eo6+rokqPylrWj z*X0wH$|Ib7%L-5tRG(nEI|U01>eG|sDOJ$QuQWD!N)`>b1H5jh^2+4;R``Az36-8) z#Lnk7#n=3~7e*@L7e4OZzbaww5RY0%iGlJS5`I~*uVNOeYU}y=ve&c1=v<0=i?^>` zrm~UlzMN(j`B6~O2zQet>@GJIEh(vb&I0x!WxRjVmmO_foLAiZpN6buieWe&g%A9&6XdXn@`(r4z8U8S8(Vz{&6~6I`Hg|=gzmg6RM!v^& z_u?2RJenb`<4XJ)eOFS!54C>UQo4KFD~Kkv?G?-0#o;wq5u7+V!LNN2QOu&I6CI-f z1hmHPDqG~C-uo6}w7bMMkK;%Qljz6nuTnfoK?kdVTu9koA(s2of&b2Gwp%#};7HIP>b5o-cQLmMy&g z5>H8&o})kaDO!VY%f!FCr^cvc(5V4rLPRe6t}xs*Yxtx_(PKi3!tL{Q$A{yy+kbU% zSaH>&f@A{1sNfl||M>fZw{Q$GtEESYU-LSKtbEJ8qV+;vfumq-gXHU{{5xOB@R&Y# zj2rF689;3hk=FY`qd%ljktIf+pe@SRp+%oW-BsDMMPK46zeQy#FK_xcUDF&Lb2*5F z?u+vWF+u8CwI$3tcyY9mMh=+kdT^ZZuHT4D%l9nb=v5d7~T7d za-!pS=i^lZ?Z**OZ=i~Y2@ss%@1I%6`o6&mENA5*nBQ9HdCso4%|#c|OPi^~t};K< zevWSz$lCF5(#bR7jnQHT1!qWuBkq3svT{tI!C|;0>i!O~J zh@*;>4mBjt`EfDrcZin`11T}jR;QXbB1NuH&TqvcGO#!=y3Fc#)>OnnrZ9ec$o z;aJ~KprBL0(MTc5Q$-yc5~p@g&iHnDX;x$!KEIjdr2euzdto4MpNEWrbs3>hOARsg}IbiUY}&VpMN zcF~QSeyL|>_zx)$W6n!wwQL?^0?fD-?{cEw(u3GuZX z(Sx}-oLNJ3Ase{np&HioYAPinrnXhxA39$y)wp^+85)Q_t@6f6sT{A|J7z|aCqJI$ zicX*klN>}Tp5^V&mJ&#Bo*~&i-+mO|5euHU29}0A*^Y-{y1mFuae+0t-I0)3D42@* z&d&p%4}Pw@Ed5tjN*o_7Ee-Yk>e`@r*V6oqG)~wUxbJ$6edW+@`2+cgQMaMJ23QNj zKQS(}r>qjjjw6vs|JG4r7CS_JiS~ByKA=uh~(;y_Q2HsE$h;H0@pJtH+zXIok zx5E$PrQ=izWD73R^8V;lNM0Lt#mpa>0awVx2h_z?H*b+PPf5=Ez8N*J$+5uyEmdGo3flGvFRvmY&!54Uvu(_%y(W+|Ekf z)W^Q$rUsSkNDv9dC@Ik&az@g_QEq7n=h0iR+#qsy-ub? zY?`tVNwFb!>}*cccK^}9z=gt8=Hwg7ouWKdf7I?}XdVs$N|mwjU&-B$Wk?eI#fV9} zVHhW_h1n1pIQQN)?YrI%peVPLeyF)bhS}{Ej?a9gg)|!nt@LrET!2=XjuZKG2x=^} zAS-^DnrqhCdQF(OxxHefcCO((PQ*UK#WwI(@bvCVJ&SnBf`{xBznrKR6U|fQno_3d zk#y=$dj8rTCl!lT+CquN{JaC?}$ zKw71I)Lv7E=zvqr;;HI1<)bOz^TI__#}3h&A=5a4HW&p9K|WoqVhou_cV-QFi--Ms zOe5Ivty=b-A53XG7cSf8_|*3&y;c$v?@c#nvrQR$qK$r*CxcDH*76{bJ(}m>)kXq~ zsApIt4~pQ0Ty)SlJ~Pi}X+VyxZNXI-;rOu7f7f_{sxBlVWnnC6#M4JA9*y0vgA`9s zP2V;EaS<1g?whpHI3c}$S<~(D=j^s(RC_1$u8sr61kilNv^xMc&14 z=XERC`BYE5heF2vA+PC2h(%~_>GTV!OL*jXacbafvxl$@>|cUZZbzI4abS=}a4ID$ zhaMx?;TU&wN+Jc6y(jaXlQeRKzcK9~>d;XpKh!61r}KB^5;g+5u|$62`}=y=w8f-t zYa%&XaE}?8OXy0R0w})h#;mI^kvWcIay@*bd8{Aqx-3H;%XUr!=7zkpMd?@nOA;o7fT;s zUBd1Mw?~aPb{+{WapS~ELHP4@rI5k1EPYTr_;Lo-WY+eG(2pzU*C1)+=7rxlSKDed#|xBMwAg zETE*|dlM}lN_UWp-#Bq&4UKBYY|CUL#)_#zE(s)SDVwe`&V~oA5>Rc|-L;Ky2>qVU z>6#h%w|VnmSS)|*_8u`JzNR5qxY<$lHx`nOY4P1$+DisY#}qYEa_L_M zE|K_zic7@Xjln*#1_{O(sG=P1U&iuBcaSU5G~a;H>kVs#gUdKbRrd02&*_`;;{pF_ zRixA;nTgub+uFHz>j=2t$HH0KpYGM9cmRSM}x1TP=q!hh;i~xj9 zG(4W(t(g_P^N>JhL=GcUHqb=fsb}}*C;wWEMhs<^SnL_h@*+h&{>;}O;XR;su-a96 z)1Uic&x8-9xMyNR5}VE3oQ7Aud1>0&uK;3!AMQ*+;@PHK84*C|%2a9}dj=OvZ?eOwcS~^ht@H~j5<;>ecG?k@m$@ckQ|FWV2y(ty#~D0Zp%KeroJomla_wrR z%JI5Ez^ySCD9CIJa1V21UAUwoA}2aPye|FPQPa?p{!bo~KL3($CQRv1C>Vy?bU-(@ z*}T5J6*-L5w>2&|s$%QC4Xq|l1@*rYt^1dYvSECUe(in19mcxV&+@Q7Odbj-o}UYj z6ts&KNqq;Gig*npT>4>3@b#R~22x%WZK>y+ki2=PVRc`#kboiJ=|1)y)|7~RF{%BTk>};yOiCFeG z6LF5O116>`Pxi$~%`V@O5?fwV>OZ)rR_6Fqz0t9c3iQxJx2%H2a9M&O3*}{S`f0vPzAi?e3g1G4Snn#9Cf84IDAg`TNElMy_BS_c};2k|1<%i z2jjuMv3ojdK;eWShK~Qx6ioK`_omZL>P-PaiDu>uO)8SwQ!`uqK=}3~_CRW;k~S$8 zb+EE~j1%8v_MuArK5!Vuv0eTTm$SK>&|5WUp7&s(hHSk8S%P;}A$mmG1pA~&IIh4^ z(rd78UQ5Er6g>)h9Lp-bI&)_OQ=;Xx7so8_Tj50YaPeg@fo>#}u3ylUzlb1S@ayJs zP=@9#*l~xswjon8H^5)9R^1;(r9;6I?V`%=LkarpgI^MrJ!HLtkg3UnOM`thEr`(l z{}0Rb|1JQ{r{!7nIQ$YwP{kCw^;pScr4PKj=mmnbMx6Z{jhOKn<6jD__eZ)2?|(uo z<0Emq;41(hq|yJkAoY!CS(HHJD_JVx|t9Gl$v~@mP@LO zDOBWYS!oJ3$UIBreeIjdmx>A$SQbk-T)aI2CfuD$HU;;mjS~A(2F@`H8-lo~e%%ch z28}GLGw*~{4Awu0kY|=v2tF-PM$ml9W>Ogcq0K}@Ege59hwO_xZWV>cv`Vp-DDe0M zEfKtO^$L{B58^nbe;(T6I{{v>rGU^R&;nf=?bWx2s8c$q<7juPWfn3>S&y0lI%)$P zYkMP?U2?>EWIR{<_l<-?ekGENq&$jx(AuoqA$bg(b6SCIGM$-R`t^=Uw2!rp^Bx~MZ39F|?0P_xvV<2-`qG?BT*2+s z1mprQj6s9)EJ1(B$pZ%r|Jl4|7wwB5IZa=cHx6As{_FTN!d{zvQ;KFk7e@-7_29H6 zs?rek>B5!93I2}eGHeCQtgs7q+cvE<&`0-tPrh(eQs_oi&)5{Q>@C@SGEhk201Fk^vID#eoB9If)8ZdP!P;a0!a!8+U0EbW#gI;Biz@ z6J~8MRF1GdDms*!NTiQI>YB0G5&e*R*nE2EPIKy9YyW+9XHMfzV_QDK__%2rB2q=R zLu>^m`@3WQoG#srM=klBB!T2JU&t_Yj7BdhM$d`Mm7%>zeHswRFpvC^Bvn^F0rmUn zZd(X&MhozK+gJm-|LfRi@(=f*7Z7~(n=pJpVacLx$tBK>1R}iuX(W2F?Zz#i)#5xB zDRu3V(IVT-Z2R&OC4hfL37SiEsw4h&wAogVJzvKK|NW7{gEZoz%JsZ8M?5?xB3)^2 zm63N8R~P#1NSRS=H2!OY$A8kM2slS5EaZ6!JUPXSB@$vte7*(@y`TYbg#^;kZx}opBu?(dht<}@_RUCcP zGNmKJ7q{~k40($uvRWnR=8C6IU%A9^%e5H9FjBJ6_^sA+Gf98P41VIiUbF09cZvMO zx#a+;`jx%SUk@ED{B*#v3bTLupm@zZn&U)8AxAX|H22g|TECY`v^_Ul%?os_Wm@7u zgKB>>U0?Bq#y$2Kxy(hMu5xlnvqG{Sfg@0pKqdMQ|2_ToeS#LP_C7+^(ESh%5D}O3 zfl(pZX>J413fElENNt!!i!y4yFVr2L2283{8JN?+@3e;4a#5^eT% zzVybns0gu7QvUbqhF@z-?bvI53{gs-8&q~HSP}a9^uL3KrQ67m9#XEIhAm*((=3pD zvXugx;0EfI9fNs^NcS-%l>J{6pM3#DbmCf?mj9~cDQF<`>gJnB!nYhAO(Ndx&;}Qi zfBWzC`g;A*bC=o9z6COBMMP@F+~js`G}M!wjai##Gh3fGrWVU>m2Mzy;?-GV`Hhvh zTf=`wFm9J^*c3F!N5*FO^lP5*T2tvao3>48*oL~xx?|vK=uB^3Ld-X9U}a;6(Ot)t zJLU|NlEX9qB(L$v1BV(+nzcJpvxzWb@To%0!>U)&2EDr^>d2ClavsqbA`d%$A@318 zLhYjrvA4f)JWE z6hBI9{?dLqE^5bSdhij5x}bqWBjwT!T^jI!dss#?JHP)$kj~!;VZ)h?Oojm)*{H&k zHUQ?gMLm^0d`CL`1|0jD%s_rk^n&u2-fmZe-EB{ZWU2J&ScUtPkhO~{1_XpF?s9RzGmd3CP^jrZg`qkCp(TzGu*y{5kPM2!Q? zFy!l-G^1}*l1_AC7^UKgDG>hm;CCFIG^vyKWR?aY(YZ9!K19w>*C9;n{X5d=H~h44 zkw{qog^U^Tz+l-^X&UUPNbO3qz^R#>ufA48*Z28n0z3DKNWIhrXi3Ze7BLZHFrK^h zo}KPP`I>!hOO`njAD0PHZ(b1&LKe!{Gtbx&4)^A`n~)Nd9CkM|217rLVhInH++n}J zTS{;qA}F^&r+CX5T26BJmh8|2PUnBsAXcvoIewIIJxs;}gn)*h_LG5Dptk@c&R1rt zdy^BlIz1pmxb13!e;ibClg)uYCiabP^1w;Y-hkM+n{S58`C!gG0BxzQ%6L{4nue#_a&0^KftezZs3=xts zDq%SeX?yE}HwQz=ye!OWYcVO;X7ieWG;I3gNvNvQ$4X!B&p|Kca5LyWR2zc?6_aeX z2%7NY*`tVOdWV{Wtk;a=jmq~Wc$BW8Ax;ms60WAmJjSFeh>|HCf8C@EvuKh&gbV|` zeiV+oe8uYA?)UVWMAb@p0UDAM5 zp48-A8bwibM?~tYy$0t3B<+t9fsn-Y!KqRnqq;&DQ;EnwcX`0uyvMsd$~?*u7(7Cz z=WHnt(#sd*AP{~CX~T@bFb$9f-_9HEg)}TicOgiIHBITy&_Y!O))N`a-Y$RX0s?n) zttgsHSo4cn1^%wO?S2lKFU@`seD^{3+73^u_rxuEOsvq@=ax%ovMRg2h(ps7g5V%9XQuI%ZM#0LANf)a^#$%vp1HczXY~QHA_V2%tNNtqlpG z1OXo3*|BCYrA*WZKGUFu-$lw-%LSxX^g}nex=|wh@g_m>XDK#yc@$C3nz-v*ob!Q9 zo8O8#Z#nT8o@ZFcGgB-|8t-3)d4KR_P++^6BF~kiYi0`?6cQokyTMJB63x33Q3J-z z+BzCuIDT5%XU>60?@q`^uXy9V9T3O=ipxuP{I~gFm~tBp8xf;)(`dA@{!V-J+q6F7 zPuR#`$fQwF?Vw&%j1>lj-GeT!?Er_n)z_a$d1+D?GamoZ!gm@vaS?XMP!rP9jZK52 zTN5`6W*LeaM~mEG2g@N(-v8oBeYVvG%KBMGnda|UL7eTDj@{avl7F|DeEGnOSB*ni zWF22l`*-)A=pi@_TVj=BShRkf_X7nexra8K2~pbpvH1hJRtPfuVAp#_zi@>`rh4kR znO*Eo)jY?3W3I94{=@$BX7!*SU@4^<`LG2Jp8Ki4UZ*`HdliU}m}j8TOV9*%cmL9% zI-qua=F@43!lqw_Mn5=w>0iT1tmw;R(Buk>mU8GiwsF!y%fvPAOE0lJv@D1l9*nsr1pexHbUv^@${bgb~#z0AV z%60A7oOjx^4=mF~4)YIIxOh9{Ot8OGkq_Tk@4D; zeKOTZ&rO|QYo$cVH_zDB=INYRJe;KG7+3tL*=|qD)q=$~cgtZiO_@I>>^ahF_8-Kt zGzWvW$SbRmS!`sinObH;69-#n$7DcEuhF>DHA6GNj8s~hUC*FD(nIVzl#<1Je!{nF zw7xqT)XUvRt>i0KQqQ|1Ix2geBv z@e>a#NP)d}KFEuXcI=mbLuvH84kO!U`K~HejL^4R>SjZ`{1uS|(YAu!(UVOsP%h`5 z8<$h{?89o+J1xbLFN=&0=Y<`*>=!yH*H3B1oB%8I)=dfy5Gz^Z9Og*K*>8_nC1(Wj zg84|zcP>gJZ+kWOSFh0$EORUR>ECR~bjD@k4vE3s6&E}eLCqpecR^R#Lk<}S`DPEk zP0Sg)_4`7itOpDvrFwm0zF>fFgWJpBO{yTw0-8-P&;K=;ql#sG6{xz$w1tb_GN~<> zdZx64E`b))^e(Nt>_OyvYEh?UI&yQ8PXhc8?Y$DmZ3=k>76I;F1EjGL^NEr`EFek? zq9{=+G*I-A5h9XaUCD}$c@wLiwtR=NTWZ4RiRm2LuuJ}~#dOB|5{MfEW z8??^AX~0b;d84P`HI`;ys3HG;XXx4u^8f+DLhH@|K3p1OY4R+m*bDGm#^q#Km(g6m zUJD{F>sLGf-Ev2|@a3_(39J^3>Ym1Sr511VE>G5+YQFB{(RC8>xxJ@GWQn~Z*C#zz zZcSVbPuikA>x5^?br;%PM(DV!%qMa`-7iY6K@_XH-ZWN~5mwvRsYTr@WBoc*!cuEC ze!n9lcWX3%PJdI4E@PGoEqHeKb-bVrDA70kMuuVOP`l-ZZTW4HB+6}vPSD)ZuX(b5 zj8)1bV(sXYOx(@mR?xlaK?f-gM8}Smp(!_sDrXE;=A%}XXT|#bdYx8au{w?a)MEbA zbyo3(b0^bgHV@y8pzFfF_;UDtT8b{;>t@ssU2MC``46E5scy93GG9aWs&7}xO7s55 zgIH?ts(N|v*%i(d1HoOE;3)^;_em!*KbC3uVSE~3<(39{i{EgKL!)8|)iP#jl~dHK z^K(LiqaRaJBw%Ny8qCe5y`HPBMf$?M)r20R{9b8T<2xl5)027}L4sv;S(Qwu&Zw5v z)2Df`!*?UcasNL0{kG)|IIlU9_FNGN)K@1eYbLsl#YUP3WP1Ye4wugnKQe7$01SMx%TAU>e4ZQT11#aseM0P8rbIY^{$F+?W!*dtD#iX z3|mzCYH-6y;aKem`)ZO)%P<-3s;K{TC=tqXbo_I$j$fHB5mjCcHoI9M-|8UQ;k<(J z3XYNxBO~i)AmUs{W0z@fT)MCMu;CNT0+&N5Ilj8CG9+Gg3G(u`fsFB2=_b5>nGvRA z`IpIpsBC+kMBjt-{2FEq9Q1`@{vB9B{(>wMdDR=j_ljs2Ah##*+UGcwToATGPRz$2 za&@I{S^&ZNSx7~0Zbrm?%M2Aqm&JT8+J3tHp9L)>4K)Ga2MoAf4b!iu+ybVPGj(T6 zl12L&`7nFd$sl10V2&K`7b7Z=l&7c;Oof@4;w=d(3YG$oDU7&ej{bNDy*y?DlEw zMcZAN)Q0!PlRINMImlff4od|RrAy!qj4!BlC9|T3ZpW@bwA5%z>VBO9tRb=y2|b;` zHIow(U;9nt+D+`mnn-|FNMaYgm zw`NDa1P?_A$HjBQfH|hZfMggzAAha*e4waWZZ$AY?RYrM5MXip-tqWR;R{pS`+x8* zWBYFUd5MMrdxm$0VQIX`7Fijbv_*dkq?yIKDZbCpy_>xAj^VsJQMMQoCw(&NzM>#( z5`6LCzyvkUbc%n10*pyP3C3$)XC0LMdw-UI5M0ycm`(O*h8Bglek4Y*1g2zYZ48h| z$zyXu6ugo*&{h_X7a5qE z1#%wSo|}nX+w^lZu!#eS0%G1sohwKnL0f4pN76a80TZ;%x*8aW5sTs9?m@0j1ig@{ zf5#%Eg}sw6S%Yx<{!NN4>PdV{g)hs@o4zm4zDW3-K&ZBRzQf%`IdEvaKZBsDW9H>g zkE27zD(iASBGQ(E`c$g#D%xTVrMPn*d4G_^pU>HH8E>D&kW9>d*}YZ{y2wfqu2THc z)ked*z$MSn@^!4VfPZbu_LkEig?ph>xQZ_2=b7pWUL+I9o_6p%-+l9maySMaPKaD| z=m8%-{_7%?l1-5dkHBT5RmzUVY6v--JDSsJZ_`ds-Cp00K+qwJYNK~d*g!Eh;^JJ2`0UFEcoIC!gOfbD5V=h5pF71}Valrj;SG z^<7w7gM&k4YZZO$=|XfyqT-nhw#{eN@)+Mkm`|9!_HeXs`Z6wFh%Fzqg^=>Ga5Pyx z@w{m})Vdx$m^lGY(S=)cw|@-$0a5DE#*tw~_l%zMa%E~U{@$bC;t8aVy31qgIIH1_ zdU@H`xfHFZ6~pVTx2G{4XaJ0ft2n{6$H?jvJZuXLc~><#5gAtzHgp!rBn@Nn9OV1nzngAT~1V# zVknQF9nCtUiv-^L{1SY*UU#*#Gm&PVIH_zs)g3n+a?EuPdgl*Dt7;c@HBvsoT~oD^ zXb6p|4lU7}vqn-TbFWxaSX8V$(DrzRwbfnqifnhmH)EU%pm#D=I{zRli|TNBh^0h1xF><*E%?#D~Q2G)VQAL7Zj9hv(3;$yyl z&lY!G{8u!>`a<)4j%3$TB#+a*&6p&(i0g5ok?!ocjM_r>Q0LHbo9)p2r?}C@HR+|C zW{$j9t3is2$H8{IMNfE;axp}d&;bf)GwgCrfi0d4uRf2fI{9)xK@`yz{+onK={4TYD%qs;W{b3SqtsXJOZMB^8t_>bLqH+BfeoR_4E%5ow7+EcNqt^Wn zUPD6%pqEvB`ekI~JLd@t`-(j699#6%%^ra!vUPzU^Jt%g+k#qSnqdqi>!* zo}?N`d9g8-#h@|l_x|+gcIixt?Scu3+&RFKgMg<`%IM5we2u3t$hqWxiq}qicp$*; zOJeMfCrXxt>cu%h-HYL8B)M&%JwIS+FtzIGV3?g0PoHKqA(?>ZViCya5v>|9pL_Qd zZ3R3R;yA^p;_6!8(Fdd9;Pqiu1OUCwx|l`*qWKYoZ@&!w8>@y3?zBfA;9j_ppocWzraEuKFec5pSN$SJ2;nt^n%k7l0xYV4IH}te@3T;=@ zso^*o?h1%%&Youy-M9s9(xaNrPSs118v$)QChE^8o=28avP1(O-V0D|@hun^(JRz| zxAncn0;vvO$IA(Itbr2`h50JU4I@lxD*eHKf} zzb~^0BC+;2j?iS9pU&np$6*`>hBilHg7a$HaGSSB-U=%) zt=xMR`Ws~Ewn!wzoF0VILkpSxLM|DT9|S2$f-f^JT|&1?JRGb zvD#368ikN)LB`yApU0(Y=drt0rhmJ4WaKR;w$AmI=R>?ecq?=wdaQiXjcJzPdE^Zm#j!FLj7=4kdJ+R6AR>^YnAy?xBp=Q zeDR#j*RpF$V?WYWKd)F&i7Nb#-I>;+tC#H9j=H?Yocw-nj~mK+k&uSJky$jT+^{Zq zxaAicA=T)e`{>F)W3h zw>yBk+9~@%r24F~lD3f>Y=>T$AksQH1!PEe$~Yo$&+yRSUA1r`U+P!g9cI(F=ICf{ zZ~%#A&IMm9$i-)%xSY=WI!sroD((GBRjxc{=+*hy%XW&l`K9$v!A!B$k_2hnQsH>;Z#}S8{ zWoKi;3u^Nz*-EgP{K>0w3ys}1ZrG(le~(xW1%Ct9t3kJ+zz%_mjj*KQBw+$MAW=D_pi++OIc zGHJLL?OeHu?6karVs@`X;v=4lPN(d)e;9cl_&wvgr?zG2z+(?8ER^^}OqstODDc^z zKiMw0e0;<~ET)Y$*jK<@%l*AYLhv8b*WI*JwEk}&5m32F1OCNYwU=H#P2_m=i{y>l z-#nzg4qmajyXd_Lu8-GGa=2At{^?ZLPckuI=dgU`N;I8D@FqJ_!LJr%D(P(JoJr#NQQ+f7fG%G1kxL+8pTk8 z-8J>P57bUtv5-@@NrR=ROF7}wtsPY=(lw#deV|CKigm25CM;+AdFc!;QQhLb)^LR1)e|N@IczN0H^FZ) z<#e#jztQF=Fz;m7#3vcWewZ(xX*tUS5X6fW?#g|+MN00_15r~Mc9@5N6Whc<`Oh- zh!$ZRTxbXJB>7~BxY1Xg9DK{uPJI@(j~JtrbYWC4$3DzuG9dl{IpMK%xk>}8;~kbD ztYO$XI%t|QSDpz#<;_V=rpLaC{#qYB%lP?`Y5BlR`J+5j(I1C?DY#oWt^tvmgjL3j zLa|R&wjC!618TNsZ~)ZC$gIlol%B|LA@ObnD63d}3-`$YoG;nAm$zT)@XTfyZ~?8* zapisef)fG)A=LLlIWD3M0`MrJN&9`lwcE5T4G!v0*rVF#roEi|>G+HXVv*TXgM{LKS_<2q- zlMcGAaN##Zn+Y6lesNid`wi`~yb$!6rHO~`yzPw|o_lEAT-9KrQ}7~>6Ac8ke)%Q zp#Sj!v@CEEW3F;@Go?Rff*9;KGl?L#lj7}E7vT+T_7$wPfvSr)d5-`>pN02Rf8i9h z1^;#(+Y<~brq%n;BQszmw%^ac%>Bt-`2{U%_R_J)F-NgZ=&_*&KNsM0Icv?cFc;}< z<{z(M&=Lv)9tzR^i>RsK!`8ZxLtg=vjB<8ydb}kDW4EueV^+~ z$gf2CCAJQQSEnv~ODnZY@-2Hu=}$zCQ^CFf0frGkx?_&rxoZflnxv>nEs6i(Yaj5e z#yzE#p-l>MK5LQboi#c(9i-E^8KrPL+jyz_&JN4!w638?SPP80a42n>!s>-j)Hr-j+s_tAu4K_hqB^3jle86r zipoj-8+tiF4f|N%yOSIAll!?>#JV5k7BuGux_yIqtE(=kwzY2}^D9Xb6^^=s;C#c! z?BE~R#`BhLHoY5OMjW7;z{j1=@E$%0NY`=F*ft z{f=%4^6GyFs`(cECj9^}PuupB7Ya_~l)*whPx#6H&>xaC;^ZI3kj*fY@^bP zOTkDTMxQgR|K5EA+l_s4O8NHe9mt5t?5F?agchwUAe4nTw~jL{4F`-$-Itf0eAHlapm0xne%oSe3sXku=d&#l2X) zS_MD9-Us;Z-3cSBI(viwAXR+F1G!l@zlhWFZ_M2;M~)aC&0nR|Qc|zIzOT_`UlV2o zns>S(nA^N;?KVsn200Z3nXd;KA%P z>kFUm>b-jLF@v*Nl>J0;CD(o(=626s&^?JnhEII9q>W5Dp zQ>Py+uOJ{)98M=~F>D7A7=fh};qco8$>%`#D`3Ar^_OBMubcQ{e_-f;iHF@oTi0-Y zL~@COfyQ+|j&9n*$m6Kb)v`F{x>p?)S>(tpUk421Hlz%^|!{Y}?J7o8++FUL3 z_P#G08H>H0i_maCmV@wkCvJUaiqx43t) z95f#Hxy;QI;&n860YxrBKmBNa-z922l>X?{ZhN})b4_~r3S|Dxf$ZmX{AR}eL7g-B z>4w9r92P2h*TVQ6F2m$eo~3{+ofkxwyUm<}^u2rD@9XBb)r`rPJE(3lYhgC9Gq`<%{RfzxJnotWzz!f8n>ZjOs@|}duQ;Waj_uoRq6uVOu?=zx z0-K24-ABx==kQ%!>z0YAZpyHcA92I4mk@rqOWf=&917ynJ8BYo`)Fzw9x;kd++hPc zq8qHwT*O$udLU`Tri&|MjXy>`d*|a0*CNOnKOi6C)enJT zQD9an!E~`h+nrDkT*^6dxy$kCx2Y>~^8AqL7+FGv?C57MPaIk(td8t0DgVYS52axD zZ}&~j$cxEm9&&cPuHOba$5m zf^;t-pma&Y64D?nxhxyM{oMH8`+hvW_xHPx$M4_S*)wzIoOzv@Gv_>y2yoWmw?|kx z?pr@URwR?V`UYL^}9weZVSavg?G7O&M-w}7rKNG?ur~y z%!OzZi|-;K*EQ(W(3`pAEB^WZ!}7Gk^h}}KF%_4^Z#tMtYs-gZ_2@Zo$UU>IEchn3 zsEPtn57syfz0I5B=N;RY&}@M3N%qJT_`;88ZDUwcdy#c#RYJkgQtt(`vxZ>Q$^6*_ zqh5eHd>s;!D%Yeh5=hW|Td}{mWl^d(+hdP3Z__2gzn^$1N|C(_28)@2`$JJxAH8~B z7rMHhwwb29Pdb)a)7}h2o@uT(%l`E@QJQ4JjzcYvf@1CgqrS%%{y?p?Wl~^35Nqg7 zbi!{wN30;$T7@T9!>3EtjQ4Q2PN2*N6>3qFxL+SH>cnNMJc05W;83YN9pmos1sDVm zXlyMqU@DGJ_{LwdDS`4fG78%}vtX9jTy7x7g_?srFlOyJS$kaXG`_e}kI?NR@ z5)jygY;cq}Cwb7xR7C)XsXmJN9e%jLHQ7m(`{e0BIf9z_WEtf78B~LJLKNW0~WpX~{S;dB)DvjlfC>~#yva+OyB^fcqBy8`5rsjNiHxYb<3qSmX#dKDfZN4hY!(syzU+B8rU^8Y z{+%Ldxar+r)Z;)_<_bc&EF0YjkM-G+ak)toN~N!lGNoi@iI3*4t&y6YRuNuZJ_(%I z#dw1#NIJ{jL5at?+eImO2&)c~|6z*TG(Yd+l&&tF$xcoauPC(K-=` zW77g;xUWvdI?dOs^q~)(iGqF|Ki48~fyKSjhzBc+3%1uWf9Ye?9!^pkE9D0K9?s;A z_CByihKrtlY`u(qLp2RhZp*J1Gb7a`)GAl$leypt;SW7M7OzL%ee6V&)wR_0Cq+j# z&|tse=p7I`_l7kU=8*?nq-E^W{BdAJKdy-fdzf_<>#Zq;gNJ&}E~7f$K7KaVgmdE^ z`Mz{woN=nm!Fm-Jy=4$=21~EXEgiSu)#9J8yE=7QDCgUNbGhK3<_gq2m>!*@HaE7i z-C+$ZV9m{&|LT8*hPyd+haLvUrW<}l74^J}i{4R_=@~}Xes;)Ev~|f_DAHeP%M_8i z0*%FCb3M4B7C`X4Vf(XD3!Pdk7uI_>E~7i(R3P5&NpxuNFLNB*bK-jP#hraE4p@Y+SU2_hDjz9%h zOZLrA>KMZreZ72%k3KltmHA~5hS10knC;Z|JB&qbbFM`|(3f>r$TREw;cLVW@ydw& zVO)}4Q$U1fLy?SLrkr=^`Mpp;Xg@kmFIbI^j9f!6Xysu-i7lC3P5Lg&WjMGI>etVx zr}tU1PIRc~z87XsY~PB$JcDSWq3GVK5I0kJnEJQA*1yNrS}wik0bAa^0_X#2XLv9_ zjlV@$hT))!_0Ew$^CV?R>Ib%Ja*Tz*zC26ZuAg$yI`cjk{i{|!QF19lC4_Tms#Bqz zHt>G@Sr4xF2~;*7-Kn23pLWvpfktFptsE8D`PJ90 z>0e#EHx6+J@^AsSw9Ma;H<$zcHHvi>>^6nAMN`~^tWg*o^%1}VNqgM24ln)q0s$i3 z5Y4Z%SP4IqM;$gR=Pdw2cgLDtpit0}vzs2FplNZN1BF5ES<6CQkK*~4ET-!(FK({wCjC3`7G< z6yo-7qLEe4PZqn;ELk=-_d=nC3l^~5W@r~A#cY63GiMXucZbve_`zO1d~-3r$ZA(% zik$4)HqM=u6kkp^j7R=_>z8YwcH%-M;t)hWKkW9qtFp`2w9xE98dhN*YKMAU@9%Vf zC6JOWeZPTz7f(KUgmU^mEJN?}BOhi*vfo8rVJMilcRU$NgBRbXBV7K|U@XvoXpK%Z@~_Psa)^ZvleLkq9ma)4>9JO)%jiS6li>_*4{_HSl_YM+h$deq6Qz-lM zUhf_`cY~GVhFEB{%sxW+d_|sRP%AOJP0b7!+MPWD$$N?DsHM&gSzF|-rhq@2*G2R-2P83u6*;;mJlYr%bWLl} zQS!YhyLqB))(a|s6auZGY?pe>9sFm9g-$n0UdHEgdB2F$-29GRq$GBjH9{1xG`mS& zb3l~|M`rd>;Wr45BW+5|`4SLJ7#i|==$78+oInooXPGaG6LW9FZ>4W#T-qjU(`nPN z(e1?pZt;gtX}+|8THS{Y|!V$)+~(aRuzdssGU&wd6Y0@L=eu z5@%-Q{-N5{+D>MkI03(4ABf)g3l~FGt4MthR3C;UU$xd2Q02cfXi zw4QuQMZh7^7d-@wd+zIP@7Vb56b)I-;l~$T`ySZ>F&hD$%lBg-csH>bRWb(x7jUw5 zpT#&tMA@d{o=8iYPIW@&U8d%AXd}Jpnji3*m_*?-v2}%hva=1qjqYjrBhQQ#-!avkSeWPHuC)&WHi8E6CluoDDJCvN;T7T+ooUgRK*YR>_-wb6dm zg?pbyTQ@?%_Pa*DV>uC5ART}}Hs_LSX`b(R<~6}P{wuC-#n?ogh->Lfg->EXl4c*$ zgz_;B{rO0+^Dvf3zhe*b#%yg(x`Lfc4Y1TMZcx2x z3Q#MhK(2}Z?PdDYWRP8Mi~o1O$cs{n5wUOR;~^oZttvncdVXi3oa$`?jYtEK%3ecs z=pHV!mRko{aA#|nXHzZhMlB1E!vZeC99gQ7sV2P_*z8f#d?dT7cd> zOau+q0X|CZlMh%YfoN*o^8ryUImT$e1=jQ@*?Q|xN4uBDtS+)Hu-8|svcH%9?4jS+ zNy{f9+i*V9ZTfBX6w)Vi8XK~grg)P_{)(^(+j!(Uy6|G`lImN!M-A^-1F+$n4cQEX zee`SN-zwcC0?5~w>nsu?d zB$3G*dcQDPATxV*eE6*o{nrm9JW&LY#N>ch^re$`+#GpNi`UHVYO$tUd9HksK%s5~ z&NL~k{SxZ*ZUdlNbAr4y7QV|Fhpd1g#lX2kknI$UJ{`g|HEd7ZS{9Pgq;h_9g3m?5I8h;r9F>3Hv)J< ziZ4^He?EdP6WgX)AAj?#**GG|5l#ySBdM+}zpVN<*xb_-c0Pi}Qa5gpMY3B#(fO z`Ov>t4KWCZz}#B4rLdDoKqx3=K^NI3UTL1P;VHNL6p;%p(-%gDJ$BCIr+LI2{<@m| zVAaqgp4BmmE@aZW?i%N?4Q5m$te(mv)9-C8grvv~@VJ8})9$b5T211{^hYcvY!gb#E%{Vp$Lczvwm(5 z8a41vSahm@)V04UtkNO>&b{XLNjbR(jhwi?eqX84OGCoN-9Ev5nv*^hi+f5ZeX5q6 z80TFmQ~V-5fvUCi;OyAoDs6G1YpdLXb0{X}@GO4x<&S&t0VE2hJjK4lGE)9; z!t?fT=JAPt!_;HDk1XBv@`TVD{h-oX|7nLk!K*<(cu|$n$)R-3Z)s63mj}Me>sZ)8 zndxQGXgHUo$(G~9b5#o4t(>@)Tu~n9aZD_ki8a$cBz~6!*GZ+y&t1vLwC5u9N`n73w=su?0%YWUoQz4{C5(5<8pew&K+UBOu6<; z;O{Ix@u;qC6;?}N&0&Q8!B#yzsk%zLtY$^mcm0K5QSol|z*ML7Mr7T;$PJ2r3$(tV zKD87@`So0aDman?6<*wgs~fglqO%sA<;-$3c@m(vg}1@Na=TT0<<(c?-jFOrFF(y% zx?nGCuAk*X$wr_A*W&h!MZD@ z&62&)sSmcbCiqo8A_bM)6fACfEV2?w@hMkHMbdz}-n|v?&hhuZ!Hd0r_M#<&I`nsV z<<1Go?{(%(k7FR0VdY9Fo$u%w)TcT-B%?;{E|42V%V%6}uYSDqZ3Pr4XM`rraTy9E zuOmg78;W|JzqOvS3Q%I@Z#(*hOG82@_{OQC*!A`*vTC46EA^Ah)<`CYi9o0BuVD~w zYbNmkk}h=h*g)#27)#fK^lMKk!1LGlXP1y>83fHw|3SB{w&41ih{XA^Kkr;V`nMm> zYI(bt=CO7PM05;Cf{r~7WB2p(9nSMr7Qajvu!3G^9=df$*czP4tcDlLlS}`6bjpoK zkAfC-Mo*2@;z5|KE@nt?_1XIZvE3>>8y5bA4^(FethK_HC4H8!t$(~0-b?qWbN3;6O>Xo~LQCBErQ;JwU7k<~qY zz3yjLcRyd}{<`pgs^KNIu40d=i{#3#-xkLueb+B)8M^3wcdpRUaj@u~B^DJnyd zn?Gbq4#AV~jpzGNN(R0F?xV7rmhG;YP7AC+9hQQ-ii41npQWR>6Cuj&ZL+vEJ-w_G zU+T1Na<6)K&P;~t;UVai%|pr^G9zDWL`87rNcYEB=FX5<_nihuS#!ypmMKLK1L1R0 zudy8w9oL0A5nQTo4WN_nsp43GAkh`K>-R$TbW{%_y~wc(*I!p!#uJl0g-zT}X|Kzx zvL!ZfI1vEc;^)+Y(h9_5VrS`(GtZca-%vTc^@YF_P=*^7rt%HYnCa_s&q(=m4(}ZS zCv82qnI@cL!C3)=-?-a*h;_FNj_M!fvJU8k{l_2*bhKL>Fm~#7o_{Ney-myNNk>v!+O<|QYO=0h~AqP;}vYjDeg(_ZEb)f(&PjJnQs7k!a`w|kHXh-x6p{LZ%3 zq--yO>Yhz5F4vB^ILYit7wpSJzf9%f#0@zXMjh^}@>sq@%#~wBwzP%9T;ty)rrUZu zUxaoJb$RXRGzxlDBmg8i{$5EO7mZ|%8T{akS5?)69dw8d>u;~R`ammL&=SMH>Dh-0 zoUj3zMAf*_I7^SOSTpPFk{@4P(qLZ-F+u!8cXCjcHhOV=F?BUQ$JU?t((}rs>32ZO zd63*tXop_guyu1M1m^hHYIZH9e(x^3b+L|a|e&lPR-bp`ZMgaj_Jy9APw|v zKcpx{O3#21b}y_4G(XbB;Q;JxzwZIt(CXI(l25|@{ScSIzl5d$LeRvXb;?CkhXPxK zVCsNMJm_dAs8I$r@>E-m$TAjG%plXHFZD}7JTw(}hKNKpe29$3X}U-?f4#Hc7|EvrV^C(ve2KVw zK>1A7XZfL^A0;5T=TC-E+l8r#?diasp%{n5A^uoYpCTAYolRTt7mkZ6_bt^A8x)Z_ zjX>uEgxlgpI|_m5Bqt;xYTKlHo(7_S(s)_$2|ed{7(gT!5O&;#!lb8Xim7WpFY9!& zK^TTG0(*H2kSMS&CSR;+?)wN!n*8mZ(4nlm3npXHia+&r$I4|K<_NIT>0=&vU1JS2 zOo8)Gbx>v!JaRk>IJ2(c26jDRhEB(5lx$Yq%+Jt+uV_!x>b2^Tb7)?hGoMkaxA6@o zu#^MaUg69tp>xL+ril3!{E~92VPbaf#SWdj-kfKP<$fbz!-eMG(@RARxVCFA-$3mq z9j^1(<%i(PiOQ1x?=bHuL-SiS9O=%zf zgij^0x`|!NW;X^?Qdi;+hy@`3;>69RSZvTm!4tP3 zPrpW%3S)*RW8|)G&&EXowOUViI&H6iTru8)tvjI~8RsN>@4$0<_JWzXOUr>tr&`wV zH}JoHy+s@TM=o;~&hSKygI4%gm#e=gBeQ9Ri1w=kb%4l3o+NkOo0b>Mp+B~qC;7n> z-Yd>$$%l1!hqv#5Hw}Xn83ZSvt|*G&A21O+MHwv6*ckiX^-wpx$Dl0dxj?ZzV~&a2 zq7OEAq2FbG=88rQK97cdELFH+uYr}{D-*qVI!kz>ORPJgg#CE0+8uUpXW?%Au2;;e zVB8gz2MYdPC=E+xj_Q-yz#i&8V9N16*+07I@B-Bx7co1%+??9NVO_T*MEzoxIoa__ z$Mp_jN*sO74tzV}t3~)R39J?iT)yF6nd+Zy-@t2@^s&#e$t5=w`@-0VUBYAijKf_r z9spoU+q6a}6hF1`o;o)+hIP=|?lE6)xtx-i*2?{C!BqUyBU|bZqajs$W$@FTU~OLy zv(gsPMX~+OSj_QY+*HP}^{6+yaho4u1r#}5!)0`3o~_;gB}|OFfb}Dyt>4D3TwGry z=nvUTAQq-hdIom{Vvh0xFr**2Cvql=gU$TmFvtkXP^S zv|0JSauK{0e-*_oD^cJ*o8}|qI&jkjx-J3hn7;!eAM1fW0Ye4mSdJIG*L}d+BTO8M zRcn429cA^=x?Y}wuU}QG%gr9${on@VNgU8!ev@5ZhvE zd+J5;_`$vQ4dA4{x|(UMM(BA-V#odp*)})_X?*x9iUUVvSFeTCe?w>AS8zZvDu9UD z^+U3mG>}y^YEN@X>Phrle#jeqEWSPynl_VwEGAp7fXq>aaaTfm5?ph8{H^N6!=CqY z{hy=px{T`K?HTcuMw=bMnndumj$NEWOui+#(88fahxo$t$DwTm?j;{Xj7xvP=A>53-6qS|+DlJKv4_kNNCeKI0``x+EEG-hcEItKzgoUmx#tg!=So z6V}>ObyLlt!Cfvh&9dM;15^5Mhw4AYLjGDLq!n^$kzgzE4y3eg%aK*pI%W0h`IYdn zj&rsf28!$1F+^L$`5WU;aikiB_@DP55c|S7c3&l;AMtuG!paiDSrvIdNz)9KIC=IA z#}Gq3SF;WXUR-gosU^oM5$({@!=8I3c`9Fl`4SG6aWaMm2m<0C(yYA-!`}Ms*g=am z41fiwh0A{#0bG?m0_I0>nfa_%bdVt(1eAlJjI(K6?WzqF{FhXI&4N)@x668~h@C@# z^3$-vBEQD*{36HeV#L<@*A`I}#-vJ1EZU(mbQ@N#)yZP^q`wZ*ko>4}H)U83JQeRm z28VAcwg(-|UB8Z6d9Y+U^S7|-czlivt`QDQksxe=~ z)So=T>&3#MsO|VF+}8D2W~)6Qae85^2XBEl(ZB!fai}4aK9@^rQkLQPC%jP!@z7^j z0IxaozerYCWGGEK<z5B^M3xla(V(S95JI_M?rUBR5pCIqi$i!1E z^ogETj>A#@bshxKb~VUqm1>3L7Sd~~C>G}0jl`UjFTMYEfQne|&66}KK(I(32N~|V z-kYjJ;ev@t85ky5f4Yf?qVsgmdwfP~cBVeqs1ue-dnno|b<9zWX;L2^#PHRuN~zbRHeX#1CuQbYj0k6HCDo|A}t(XBLc z^lx<}#gC7E%Pyh$vrVUlhU7yS$wy-26@z{<5(erq{<&`eC)}kxH(VprTN?zxAJsI0 zN5rhR0kAft)E8i~8rvAwS+{{@y}h zu7|CsN0QnnZ9eU&8%G^51R`MGT5&mr_JsekHz_xt@Xp&vk=@qk#g>&^N26|AK1qC7 z;@J&PDmMpiq~6TQ|Uh_ zr?g^jcF_^hcfTUPp1UI?aVv)CKL0_|v&MkiH@m$DC3`F1(Gatw?;V_bB=%D5{WZ?n z{C1Drl8)2}QAlKNC?cM8!HM8c#|oQUC5jl+qveSg!O_I$n5$qDzQmdk!ee4KIR!}P z|7pO-?qMFjj;#Mghzfd(CbjgH$`mkJTCFySI`E(-KTTzG@~kTK){j)b^04&Bb5{kQ zg1z(NxG97=Kc_0WlC+!O%4vYbEiu5$w|HpgV@h-~8gp60fG)0|v6i_ccl8{f4FTXD zm_j*d={jpr6AjUZ!1h5}qTZ(HAKda*p9u7XUCj3j zZlk?_aRM|%n@3cC-GBk`t;4&ikV^45N2*>}bbaN+EY`eUv~|`}!q35qr}u=Q^KI{g z64E>eNix@2_IV^S?rL>Q^7lp$f+9Ksw?W?qtYC_(A4}kq?`opqcs%p#R+jT79~6He z{YEapea)j_W#!dZ#&6*BcSk76Xq*HW8ou?neUsjENvJVkq|m@gBVN@>ag%qb_8_ ziA_aA3r(|m{mmVpRx5eXV{bSRlh>!E^{wdwZV!QT_7d8~~O zi$sPfe+n%O6DGyyvdEmSEoDXYqy1UpU--Vf`=SLRnxLG%+>=gRZAp8BZg-Xc>d|Gi3JJy0a#=8QjZ zEz@X-H=_S|uj3izvtxkTevBVvplt7o7Mwekxpp;~J8OyLZ0k7!;WbFzS9Yozzle`1 zpI+?uj>bW0j5WidY8Ox zRH;O0G(oF|Xrrm%`Op~sg5K6^6Bxb5QfRjSU%v1iNlup#3bi?BI!N4fQUw)_fGOhv z<@r=94n;&r`lIUm14*#J>00M<6l@&bVvt!ZM{&P~d0o^4jTSyql*ZXQGorRx74TKA zl-z!mpG-ZJ$rt)|hjC!R>R>k#?S+Rcc+Sq#`^N~ASg{qsTfo%9Z)q``Z`bt0aF1kC zfF$0S>%7OoKel16jueJSLKRh3$?DS)53w9~eMR$Md?IFp!;> z0}XjbKP>Y+0`-FZ-pi)YUDanL-=EWW>(j=!;Jl|>z0PZgTzL$Zkj-CmH1$26MqWIiY@Iy)rp%`15FEQ{|+;RqmuY=9NvSXdhM zM1j$ztGQ4C{5$C_p-&u|=TZD+UfGMq&|N;wG@M_CMTHALpT+Tde0hKgEnQy2prX6G zblsvm>z#q`5zigS=W)0DERrfBU~T0i^_+aNFN%%x%(~H z05$P694Vm&>u;(Sj&d;8|30`3g8&;A3$fmG)fwLz1I4T>X`h2?(&>8P8E)@E-aefZ zdyV|H{4bu$9ZTzJ-O6nf4T9!$B&)n8?}7|J7L-6BhProNa-1@m#2-B907Na~OTYU6T)qLNT=BUb{_C?4YYalzqwEUgIh&;?VMix5m5dk{e> zy+Cg``3jMWzPs>V3j!op9yey2`M$RD2s6J+oyE(SR%7XA!CRnlQqpOeybiZ#?5lK- ziUJMUXDu&(h%Cy@S0gO5&D}!%QJlOI8@pA^pXaTC1K(5)K!zTkzDHQRv6}1Sl9Xig zN^HIElp{k^=!GVdy$fP|3Gki!P*$AqRQ8NhFP0<6LrjIvaoUY!?>u! z`w8J=eCfgNxeERB_7Uf_uL(y4NQv=0NxjPrx7UPg8&a4+M=nx)INQJwN;I?}XL!>1 zUY5_8FxQ)J4GRDUgF8PYtVxY1;iJhL zFtDfRi@XaRIJ^M5*xX92BaY5xV1T_4J3)VB3|c~%H>vHY+*dC*iR;#$h7iY6%}<-f ze8f1K%Y^O;rog8!!g^F=dI?AQkF&{5yN&^$n%jV@x#XBkp!*FX6&c@?mwDbVgQoil zM~@UPyI`kh!9pR5B>0X6*S^fN8xDlsq;%t#fxqLsE^en*dYuR^UQgMaOG8SS}TQ?I1>ZSYxV%z@+@Vp;io1AIn`?y z>&oMFuK11Mp^ES=R;2z*J8J9c8$l*J(2bHBJy_c>5 z3LRhUT|jgqbK*3Ycl$nU=N9lzL+>t{Xky7-P~67j5$z_Kb17r=S9T+}f;=`O$tn(W zRO({Ud#<_D0ykoqjz7!kYhEBr{qKaoeP>g`2S{Mfs@n7@Lb+kmd@C{fh#9-#N-HZA z=uoB|CYsm3x1&C{%;)9jA6&8V(|3^+ zl^YWg(I)!Z=kyg={p@`$+{;m29tn+Dn&i_XWRCa7Z<&;;+&xz5OCE_`4W7A}%pYBi z)Y-$%Bs)5M@-@ixos#oHiwntqwjsz$W)aJ{#Pc1eLc)6{=b+Q9-s2@b&28ft8F>{t8zB+V(1-3WliP1k z^Z}Y;Yb2nbn6yN&MM&MkU5<0>q+cJ!U%L$ykeBAAO~(;QTXylqad|9wPmA8v5`q1< zda>y3WzlzetsVHRNw0;p4q7y;BYZMj9g1^IzbRhBLCs`HXum!Xo=#*VQ;>2u1>;^T z04Xey`G?4ioatQw?6Ty`KINjVo)ZzJl)WJDix25S>$LuML^eg-jHrFSwhji(p|6Id z{K>xCh@cJ`AW|-AwmP|JlNC;ah4+lsqmrbA##XA)kl}V@abTXPU9BLh&tzDI=V$r@ z{I|%wPblYRlOTrukM0bRvdnnV9Y}+1+ImD00D^z2(C=utGL0bR6b=4Utx}n=o3*Vkg^AF`( z2w`GZ>;Z5cMRxPU{_U7Sg|m~|KKAYaz`H$CmD(HG8rNFUJz2yYWB0<&2W!ZvaxD;zC^I5oqtwhA49Lku6O@Q!Mn=}!u&MfPf%D<0p-T7$|ITZ$Ho zHvI}zr4G(2&AWl>-XWyIS(*C?H~YZyNVJF_l#umdn zRJ5!{)jD>z}Q^Q^JyYfbaS^rhI`4pMs;1Nk*M z^FMb@ZB{11XT$_S{p`QwG|iu>eHgOYlm9Pbul5_zLvbQg&;Gvd-!%HajuR8Gvi_e~ z0RKKFeFNsP>ZX&AGXOI(s}K3Tb$&bjEr5=M1q~bd*?nTSVoCe`VESBZMD5@CNO&)6 z^?zL_9bos|?&DtcA5WjdXW|w`#PEgDIGq^-aqOGA?g_P4LDlpLp*{cWA0}^_-Cr3w z8)?v%vsnDwG=mB2P=T27t+Cz^8 z_3}QKJo8HS#%(-9yz(k^^$NI?xO!qd6iX9uLiaK1psZ21Z=`FS{PoU&Ii*kYTa3zx zwZaOimbd&Gy_!esBCuC=N58*(00{eh_IQmg_m7=%FE4Sdntb9aGSk+_{dunrp>pmA z@ehouiNEra#Um{P9o|L))5nVdZFTzYlDD8IU3lFEGdKT#wTWesy*G57%=sIzn$6}| z5>@L&!*lJeP-fE?ZQUO<{V#>WS@>^^|A&$fp1s?5$}s=m?1z8vTC;iWVp(F7NF(fF z1bq1U$2nOeYUgnZb7;5|=j)Vbj~Y(PnJ}%m?f=svVY+h5sMoChqia9p?C4h{sB^RQ zD!d8u%5$~gjS*&(w*S9xQnRy#yvFmBoTgFKoFx6TcYsEm){qa0hOI`BzqgoTPZB|E zP!9?7VT&pv{doae_dGb0_%te=iwLKLvaR|R zQ=dws{Qg`@XGT1y@WZ}$2%>?71J)fvY=dk=^#dmypSx}{G$t-IzZax7drd9hVGuS< za}PLO8nkAd=SmA>>4D5?jN3>He9FBO)w}DQL8_qe}&4ae+y+5yH zFzXWtlTr+jh5{e4@+$JUeuhp7*lJ&P&8kGQ24*wN_nS#it<@=gAIRT{VTlS;1Pr)4 z76U(!CN+}LN0>y__HhJ@bK*x+y$)xcJHL5~tv!txoWQ&hl%jyT(8X>zoG+j6_A{dqDrT=Bi%YK zxIf*S9&TILI8rQ(4fJ1l$>*qXRu8@{6gR-HvwqDuN-_rUP23ux#@R_i5njFmK?%%4 zOy43|cL4qs9|qmR=%9eL1_@Pf`!LYoRJ+;oZo8>&3`PQ~0&mYLD85_>%RQ z&A4h04-uie$BW}bBjhj!CnVcnkk5SJgnltYhW>sM&Q9i4Q8?(UWqk?JxpC<>r?0Uo z1o7apwg0_f?R$haUB%v@Avsy--d@(3+i-oi@}MSj{x9q^-a`UW2%dsm@3&(8FqdK0 zQ|yo26z>szdDC)Ls}E@#KiZP!?QvSGYdwoY;GomM} zYQ4*$dONk2R`cg0Fbc#^{|302TjAbU_(!OuGMGc)?>j_ro4N9p`HZZ_^U@A6z-hO0 z+9&N5DceF7v~@0RwKi0R?nNi8$9aP>9NdL66j~63ktt$F3l>&N7?6;1eMi|oAF3sD zsteb%guf!+B95`))+^k6xr4AZIHoX`gKxFj4;EklA<`s$L$6d47I^3SjFvRKz@xal zD$p$G^p{`a_EcXKQgt#+LB$gQdJV9p`OMn(%WOspIO%2LvY*IobfJyAA^`|H2+|bBZ(^ z#_)5OsDg%n`|Yq&3`+e;0mhu~Gp|U1d$Z?lnCnlh%7$RD{SVTDv(Nti zgLJgp$W4I(PdhJjz5tEXOV&P%O3A9c*?(ip1lFba54O5q{;%k}_Pr@7E>P|VYCaSy zA&RozIwoL#Cv4-UD_IejrH?mo#$LBgF7l}1zYWy+-v`3Jt13uT>MuL(SrG(olQZB4 zJ_-CkYvI`?0 zw$=p>`l-Kh!c?qPU+@yK5M+gkcCt*3rKjRv9RCsg@b43)Ka2Y3L^o^8{xQ)-B8;G& zv379RqIM%(JxhxXp3eWVA*#W%yJ_ynBze|Old&@Q=7 zd2H>)h3_Cj~w3ccb`X;my>+l+-i;j!F?vE^srU0A4J@@f5&x3^-uVW+(??RX#HN+G^M(;*KkG{>>7;dl$x(s^ zaFV6|OY88>-TMCVXRGG_zOWeb5p|NA|1|+mn~Ce=xev@QW0VwyZVo048VSq)j{tAy zSDs4!wCUT({|}i%ijRq<|IrZHqT!CwVV}u1Onh%YK7D1=RH&n&V$R7-*61gtEtBc> z;(w^FWx3HBW`3z&gK(eD$8FZRam9_4^ciCImNX?&8koRcxuOqPYXOJ9nhlhyb`npG zc+L@F!)O1or+lEgOaI`GeDcN7e=;MhbONH()%$rweGmF&Jp20$l!fP4GaJV$w+P(A z{Y;r_p0}%WNL)~OY>s=m{A7tR(R{ueSOYMU#0O zy9mpSb26`ijv|qM(oC}I#e3?KlJS}`k-iT(mm@0IZ-}QT(%51pH~OD{-B+jdURs?P z9aNFE|5f(QJ)E_F*_illp9xva&#zQslNXg@{rqyVFA@^9NEARx{bik_Y;Nw_fM=7} zI?AlIXko%UN^h|U9nh80fhgP0?t2tiM}4#GNu-Gje$GVv-XdiDN{@(m4rdJ^8lHn! zll7H9LZ}zb^@BUALAC%Zl*yRsM6E-knn$A(!PIQtPTfur8l_jZa{G6bYw@|C8wq}+ zzB>jB!a!E-$q&9h8mWOk?O3H2+#yUftmx&=6#(+MZ$%)OcutrX&_P;bqnWko)tUa# z-`Mu)oL(>S(y?YuL)xa^yLcB6fXhEUjB47`Ff(szdbVBLTf=EPDizQC1{gFvg<}0o zSedQYYNG_~(u=bR{5T?+G0q4k#Y2-<(s&jq@NG$CGDc$?sLe z)8MIA`CIeLPFmpQ#EA4I#Tb@4`0(@)Zf#ZMpv%}|KE3Jqff;tL{)eF%?;ZU6Lcf6h zf!Y@SZe~SQq3tJ`aqs~sT|l2);rXWj#On1xG*18918Ry_62hp@*3))$Zt1wlcn}Tw zCNBy8IK_F?W{x0MGBmol@PPRg^eK$A|G1ilP>GoP9I^o&2@Jz0T6s~Kw+VZWK0=LL zU?Jm{k=dY4rJOLvW0|&}Z{nFU34Dw7*&Mxej+w54a!&l~V#iBFW(-wcCxKIT>E3#aZ)Whlr-3MXlLu~YV*-!+lSf@f;Gc!Zva zIU<<9`dEK1+VYFWkqa;W9y4GRk6u*<1Sdg9V0c^Xaut1u8UdOgaCLCmxr)p|y&w`X z+)x?4>P&(U)QI+wM^HzvUu`+J+J-@aD+;h(z{Cr+0z z){T1d)6EB1WlE1;3VlI3yJB#Qu0H6W?GsFh^8@dU|0_sBwxHcz@y+?UI>Vm+i_)U) zTW(m=?DAxuTcfzm1Jai13P&2T<(36k4ZBNn&AIP|l&2(sx%nxt|1^VEN>oJP$R%15 zO!l4*Z7~7)PR)tVP*}?8YMTs2^~=eo0`VWnU%0$9!q3?sTYpQCdAlW}ee3qCMIp|} zCgo$&*vngY1jaT?A0CKqWIAZA&M&nk&76gpCFDFoGOWliP|;mB89@Ynbx-AXKuhRJ z>@$z(vpyK)+u%LMv7ApXuY$2Wgv<2F?*+|%zw(0hLtCvq&#*!Vn`7$1{n0%cC`NmE zkjhyAt9P*k-*bhCgHee2p__wpNkeHTai#@nI_6c*SNzY`UlejA>8eoRZ0us;L@pe> z*`0UjI2YL5Y-7%70Gm21m(TC!`;$Zx@pMOba-Z}mTvHyMk??IMWmaOnPl6Qx^A8i; zB$3B`-7g16zJ!Lw99!E)fB(@z-T#aZVQ9c=;whm2miArw)((&m{r!tB+HX8H@NTc3 zwcT}&>^rjj$v1XWZehhPu^%nIom~%MbvBlX61RTXK7R24d6>>C1=LdfV_z&$-WPQ~ z3(2z#hRqGD1cB6VRb;pNCIdvm(A#&qzk_xX@-Uc6{4@vC-B(89&pIu59?8HM+r#=s z$olH@!^9e>U8(}DF5CXRDgMC_W-RxV0?JqgioSMJ8kIe6jE=}@)Sq@kh%-}$L?kg@ zpiOqcmosPrzq7>as$s^h^)2frhk~5P1)_wC{J?riWuK)r zQu^R(LzeMiUP(Tmu}wF&2!tiGsLs#VmCzlG&&O~+ z7hcSZ-L~&?F?k|n0i0X)QSC&Yytj94J9Tv)G}^FptbcOFOR1M}Eb-Xa*Y zqR{LM~@*=E#;dvFc?pAMN&43A?sX{1}0DJd3 zY_22^1x;1k-^h%QPGx*?m#6=97X$^pHs&~KZIZJV2HrzFpedgjNSnb0Tzn;!vDos& zHA;^dEf1I}Pk{#grvtpawJ)dfrznG0dM!v;iL4Jfx`t{x)vNALt?H9zJ0|6Kie6N& z;=A!Ae`u4BLC-Hw?E=RquCs}Kzh`2*GJuBFx1}Z-e>*T*FVL(rsbTS{J7W?_TD6`> z#M+EpF)N@y4n-akvN*Nn*~25*ani2o=qc z!~#xorX)DA(%CT3w7xY_`(BANi1|lty2k4~$L-N1U!8}G8c8r9mdIbR51tSQ=Hi7{ zrv@m62kO7?XUCdK#30|aRka*1RG8V7!3kC%=~$E-Le(@RrRXnYLt)aRj=go6Z-+#9 zY2wG;vqLul0xCIS--9A(NQ%)%P31f#dHa1o7_bE_;m$nk@5W1YslI@vb;4!QP|Jfc z3%}@825{EJ3O`fEYgm=WmybTq!8LgQ4|i`J6z9|Z3kD1B4#7fjP4FOtBq6wau;3m@ zfDmK|5)wSPOM(a2U>V#A?lQp%!{9#h-1)xm`@6eadvDd<+S;mH`|nIYeNKP+boc4g z-Jf$O-e3EYAQ*ojpD<`{pw3J`dMe}j=e)q7U4o6j`l7`is}wbVrMPI~TDuZXm@(|; zua&=+s(@Pn%8>IujjbHr!ds8Hs8KyIdVbNjsTF)6U9PS9n%DziL zOFqB`@Gkjt^PxqL&k}#pk27HSsC zz!_FNlUztKIH`kv7zt#bR zDae%g&w(P{P*Kd?w#i;>&t2D+?M@e@&U3JPVjH|>3-JWCGK#r{#p@i*i)+$TBO{pu zAf|61r=PSiBnQp&iNRk&tns6^AiG_8^FRq6GbY8xmYqj~kU;~6jy~l2RdK=g0rAI) z%0=r_KRJZXH1{^N%{N<~t>Mi^&jwoKa3%c;dI;ja{P>&Wie9+Tia)&j;;As8#wRw#OFk+m4%EH~Oxx_o0o6!nDFUzx1M83QxIHq>Da8S=XT@Cx zSX+Q&tvxR+BHFj7WoH|ExMx;Q=jC{|T~N94DW7Lz0$ot9u4*7Fg>o^G^6Oxg zM~h$Lw8}&~I~052m(lIv#(Vz;Xc8e3{%tP$b7EV272r@UI_mn~>! z>r~osr!v-vWnMA+9o(s>CE%?OdrZigR<4|hbkV2;-9^5)cin6~%3{7=%4~$E4K@n| zxc9sBmOoOsHdPA0;S9{09;^5mDvpfP7JTB~c{b9B^qP=Bj!{Q6%Qc9qDqDnh#oqHv zyZLFZEOxNz$a_2^a<^8>NTNHLP#`;Iw^C(x%7$zVJhkpvr=cr*JFllPvs`0oPlU&r z1`+=+D2(+W&lz+&JsjIU2;)pEk%ARkxB|7Hb+YWCX-~QLj@x5I;9fWNjt?wbqLPv>nn(Y&;*F}(SOI4v zG5rmrf4lg=Yg8{TNI3*|TLK7(wo6Z;uKj>zZtzDpI4I_D+MmP@A=&vwA${-J_G(HS z82Wut8Cs~T_^Ug6I(}~ZqUTvzpUD%CV$WTz-TU|CP1j ziO6rm5x9BWJyCV}0iCUz=A~-xBYOpwb;u0AHOXVCO+pVwEQ)`;YZP9}D6$$&qYC@A zvSIs&{5gHS9qRA2PWyL&!!f1h5H2a7BJmsVnwQ4(i*mqZf-;uS<4Ej+ed!+$(?gfc z!PvkHGe*`qh76F74wm$13z@n%+Rl>}Lsj5aR~WWVrEceVaR*wKCkqXEMr0lZf-U_$ z*^`52;Q)t7jS)^HYu^nq(vabN!t)@8Y{)c_(%2=>@f;ekrITGy`FLQtsBX*6Fc6K8 zs${;rNx1cbuv{UwAVR1UJ4SC!i1(y6^lp_zU6v&5_>(x&Phra|2P!&HvyTmez}xF- zQHLv?RJg-s#t7~=MW)i1n++>S3bmed1UJfdo`xK z&PJsK%$6ZTE{Eza-QRRYQ)A8y?HwAt9KKyCA@zTGRO2Wark$=FexFv-K6#veOog0^ zSGq}M)jEpF_rYGotoMzsy~ZZ=J3>{@)C=yznaPIAPjn=#z9T6h(z+RX*ueo-JomSA zcYru%Q+JH-TUP1vGOof)I(pR%skhEA@|9{ora_xzhy$$vV~ZuaKd1Slr|OW34~sg? zWAUdN9TC~AS3rYp0zbCT5YYY!=-yL8cYXwzi_}2hNJo|M$6=`9*!yJc1*w(~xkL*L zlOH7Zp0-HEL-yB7AQl`BI;{Zq`)i}ct3Dc{cQ^&>VEvpmHlvhrE?XI$1^jOc>o*~9 z&mER^_}$a9u$4)1??;BgWj&KWJx*g|T5z@clA?$s%}$f}fZdgdED!ux>FMRO0D+g; z9_<$TvXh-tp{qh@EEdY0s$D9+k5&=6DWN21Jt8((x>U;_jr}lRGyl{PWXJKk!4t>P zJZQy{joqQp>-h5~5{H6JD|UzG^GKFrxuY(7H17HdanQY#2)}lU zJzhe%qCh*QD@j**=n^sP-S<-C)y>;Og0pz2)8NeQWRyEX#t*qD=14AZo}7HLCc^z+ zss)?r9#HiIh z5G>Nrq)D>IdW|C7<*wk@Sd8y`MGF2$IRB5D+7-(7jaxSA=n$>ZzlCg&3t$&(aimL= zuVBKx|B6NUX87~die|dSvIo+wMo+Wljh!0w6!yuWg%?to+Q{s?FkQ)OV{7-KrD#xg z=bzs6DsM2*Dn&xjFhC26`b|FVQi^Kj8>~rfO2VZ6JG>~F0UioHeWzC{s#hajLEf>E zj*ZbZ>mGt7;x&Ok<&d&a3E=g${{HUtUq0Lq^MS>jU6st}5w0}|Xq$LKuO=`zlf#;) z`+X}*{%Hb1s8_LZu5naCoLLY;7vIZ9U@dQR8a*5NvL&;NnImiM!o*T4=p1(SsP`-Q zuGIB2ZX1DStyMu!Ba^|{p~nIk<%W3-n(uzekh{8Gf}-k~&Ji`!4xpytqqM#JnaSY) z&4r_P;&*M6*Na;kEaI>mOFtE}%s)GyI;TUMRt9^HmEZPLvhwE!OChwzdIk6mj@km^ z8vJ<7gx^2U;`@QCVZYQx#ET<#%*&pk+}+Ds$XwkbDSqb( z2_AWb;|W>!6K~zubkGA@FKjSb=<9;sK3S=NwS&lr_O{LkNRdb)Ev{l(8_gTISFjW@ z2*aX!$t$f$;gL|vXpTp#RPa=o>mKf%DdWB>n7}FbG4IOIa+K#a+huy`uEINXuf@Pq zb)kzd>xK<=J>!n;JA%cy5pk=UgB&)FBr7dM-h{f3wLFO=4)E_{r1r-T+c!C>DzlQp z7-D^Jm6cw_$YaKk1Nt;}z&+2tDE8^?02s0N?&jPou{xb<`xT#W#@S*hx>TnyPUef~ zvgb6c_1-|Wz>D`PxQ=UNetDOlOVt^G2FiUt9Hk$G#72B}Uu4L^ITTp;k_GDZ^2nVF zpq2MN*WB~{>-1oen#J(|nq})zysAy;Sf$PM!et7iGS8ENVJeIQR(Ji7WH9*1M!b_- z#6do*F?Jbr*$TV(887kIdm-zkPQk>;)vNf^D5?m7XD*RL7e92XnQ;{W#x0IYsb`Er zsAu4Sk0ivpiy8_$ULCg#-u!Mv>4&YpFS!0k*UCr*!%qnqwN^RlK`;EJ8uu=M z=uu$}4PUYTtE>QEm@wN-=RB+ASjWSQ3BNHhYG!dyRJg3kzPTJ}mBiO#B<1IK@S>mN zY0d?Wh9}BSs&V7EW>MyIppfzI%U%uQzZ3FJ01LFP*V9&0y@wFbIp*B>;N^rC zvSgfMqb{d8>Jr4(wHm+iXT+JM3yd(Odl04WxTzCFDD@fb&7xUj4N;;a!bHOkj*p)} zQ(OwMZoaz{n`pZi!)=iXQ#gDGe$=#E9S`~LOU(HUuKV>Y5^8eG1_1|RqZVquDt8}d z>hn8~g_7-oXJv(=K z$D6Z27#*_nZ}j29NK`Ns0eUowt1&&J^C7ABj`iH~SV30EIz;)yfdT8W3q%`vXM49) z3Mh=r-#Jrmm{RF1Aka5 zs|wO&+=lFY=T*#o@N0sS#9_~LnV-baSz717@$cJd+X;CY%iDP=wZ!;P%P^ncF}~|| z%Ceo*M^bXM3sNNN_Xw4uJ zl{t@soz5H?4a@Y4U{VeR~vFLyPk{Q%RL>C@HKl0ZbOK` zH1fVv1Y|%54zINZx!Eh{tL!~%#PY`YRq(;#PP#*0kL}j5(A|JVb%$V8GHtX&X|C-S z4u?fL=3#X|XWqykKD@j?4C%CZxa9=+-m+Xn&nO?=u@uKnW$H^0ZQaXz;=c*^&%@fF zQ@|Eoo-#GBJvdBw`(uOgONn^l?WaS>i%`^~clotX|Hyih2Bx*@hvjh1AmyveVE9fF%J(X#cJ)?|DkS#!ump{c@J`_{JsR{G2*?a@PPimL*YoHjdRYm2;Z|+$f5ZH$ zlY?gBMZl3>P~C?Mo&h!@db_smxFoHgbk#YgrL7NF-fI-HkIXA_8z@oU+m-IskJK?aKTvTS<4yJdCS$Vj98{8Agh^ z?=VSAw7D0gV-9>e2Yskwgm)IYR;Jq!YRaIcRtpjw{$@QebM5S%sE*(SWn8r)7d8 zW5eWAN6@W?n$&oc7Tb5s*mBkz_Q2;qO0ywkaAsLqxq&iSMov;KZvEZ+6OA+H9lV{O zIl~c7_H3EW_unmfgz}SpX)L3u0-3;f#~i;AiCT_)q-+T}42>$EG52164C!uCY7yQY zR{p3EPpaTriIOCT<@o*lM@7-er;<6~I`nW2ab^B3;o%qo3-vxJTmXz$`Qe+K)|p4se@aO>~4cLm!~dFN-Xj<4N~`yvM+G|0x7R zurF>0;-kq(9KOzvb((jPwQIt&5c`OgYkBA^l!gDH=yYaz4Y2a=$6QrCT~bz(fBday zQzz4`z#L^5of6tTSBH5JEPI*KQj(m9p1l}SRcI97$$_AX-b>4N?mwSEHEmg+cOI8m zXQ%~jRSQW?IuYwoq|5G?i2?j;AI1+FfzAGT$q4h%%8)g;X)INc==g`O*ZqStA*#Y^ z_<{=RqRD?tz_%}+hTiDK%v70Jd(5%czW?%ji)(VAQCiz~wfTc@R{6@{>YvrhQp&4# z07p}LPpSr`$=a}PNAUedM_Fx*H{o|quH->$M0nomgE#@B2w!nr(^jhncAJ*k?9(W- z0Nlo3wr`NU_y2TR=l>G}Nse${UQpY2l=>?Rwa)mPUve5pVX<%vr`uf={Qc9Hf2Q9rqD)>7X`z+`RPa5L6!{Z%0#$|qB-Z`j#evVXRAiWkRN6LM8Sk@!H7v+@bC z^(cH{417@Z=?2|&7ct>nInUOv)S;zpw!>i)4vm#EP?XGLzh}@civkD!%}*3%ZVBfQUzwBTvfV)M{%RN&9plV#uTlqFnJKmUrMuQo)n?kU1G}mfa zUP-GhkpvYt=YvnXv4#`z&g%r$EkHPy5@@S?R}@a$c$!`k?Hp0mn7jfb#KVsJYq`?w zs;*&cseDzygTbMEAU{s5X@(~3iLd~%_0yYM$+adUSizrhe!|h^dq~L=Jhz@;O8Jte zq)XfMh*QB-QS6xezJcNM!Xbh4D&i|aij2>8U}((2Gty2lFaX1;PM1~t;h{(B<}-a3 zF^8kPJ?U57kntL&8#nX}bNeHWXG;8cP#QeL>#Kb0Y){l*of!@taC3_ixX}NZj<=24 z{gAVj?hl^oMy~iM7j-v+^Ey#w$mZP%xZ>7}NZ;TBq(fdnLIZ>1>J+?`8K9AxjjEKn z3QS$dmyHI6U{2v9NNAE@T&v3T+&6GTp0`U?c*BBmp9P|>A9il#KXw{<$OMiJ-v`!m zLFU1mFn2Q>*zuE@VZm;y+K0Ze-iJ3k3ykuqm|?7B@`h{wy2U6%l zC@oPR4JUixJ!;it+qu;6Jh?Z|&@HYrp*Hl(o54g2YQ8^P%qMc0O8Dj?o8Ra6`0BHG zx<)7NX_HddB5zJHCz>Rez2OZ$|1Mh2r<^A%q1oja6hB8*_3HmxTm@ZB?nFa(8)d zY5Y!*=FO0IVr9<7Ta18JYKuSrD2Zj(_qOzti@I;2(0b{cT*IjBtcTmJ2EDk4dGY`= z|H0(CD#)=Z?ZBpL9elTIw6!{PIWG9h#*TRldO=Vj?>^4e6J&Uxt<+}3_Dj|QjiTVA z**+L@m#LXcK6pbs^pF&-P1{+Z{#V(egFNhMIoY-G0j75G;NUncXEKrQs#_L(2U!|D#I6x@Qf3dnv8 zNJvRHGA6U*qGy+se79gWDpJ0+x^Mo3wYq@Yv8K2ER4hF&|4iVy=J@`!u)dg`71iR4 zaw`y;eMW49X(zEF;rpXmQM~v0d4ODhy(0^T+uF?Z=j$L?ZwE$Cshrq<_g?4s{*g<* zS3GkYB_#v_m@lwo`=C2%{Rq(s%vpICX=Iqf5~)g{qhabC&-=jB1!>qDuhccBK#qeH z;l_Rhdl?1?%k(IDf7gr>!~bq9|78J3fm={PngZRfWPHrdXMxG~{QyJ{wGnHimY3MM z(hgX*`lQMS)Jh$K>c&oZY69%;dQCbW34u0Dy?e~gGIhXK%4-%gY^W&>p{iRP{On^W zcPF@vSPS_{phg`eyG5#n#r1o#>IQY>4^mNpc|&p~(QAX#@%dKS@zUoi+#S#Fg|XW! z_sHIz4J3dCSqh%K)%ox#LQ2YlwS`Ld?LUVuhOCF?zB?E6!H!W@S5iOV$rjzDH{ zwC1F6)+T(90o?A{Y9=in0&nJjFiQ5|PBeQGK0%qu(!!kALyoc&bIN>E8|pd{M?r|B zrXo;TDB}|@YP^M6tG&%X6W^i@JFS!XkZgHDz1vzv2v>t6bi!6C$BUU2g8ZJ|>;MMJ zMtlmq;iVm#KV`^&5R#(k=++74y``Rx?m-{iNN;knDJE?CpplWZv_&)ahI@rEtb$oPsZYf^qW#^l6 zNqV6<^tzj%NB&0y#6K_OjS1eAGmyVY5N>_)T7<4 zm3&X~#%qL{K;?2`AU~pocW%`R%}Jm+CX*_~6&pKoyZz{i1L6|o(a3`%e$|m1AY{VQ zLJt&RZbvzb702k_pITf!Tk|SjN(gG?qtvWeOXeL?^eTa{f|HpBsoPL;FA)16KE(_N ze8McomC734D^o_Erdw1Y*3W2w&R8FUW`mf)a%kdA8{EgSUIMRC!;xiro(HE=zqGbA z-y*JlgWhmvXk*?`nlqdy>)$b^8VTg>*mTx5Z{ODRV!Eib!h zHQf}T_xKd&iV!0jMF8Edq20VFe~9j%(uNncUwI zI&qs!u_8}cck;ewXiSoHpx4$Th(pW zHy%2hQ9ac2oV;~w*0ljOZGL$>4SeWM6HHuKQwGZ+))_d$A1!rzuyfo=a_vY^1ukDDs%~9-DLU0e&hR->9_s~HwM2^k`e^n78?({shl|Gj%60XAG!(`B&kbuI5)k>B)D|99{P;#-%1f9;|Evq! zMVtd(+;QyxI}GzmC5b)NiqjSu$bA4Av$K^EXY-bIO zsOi@n?ZI0tRHUaFq8EM2uIlV7pK*yOU1FH9hF#OyXkeoIH7odb^}^u(w*YEl!D=Pn zk4F%0y{um53KYgdV(5g3wodRj)fSKDKgq@i@M_r^*MVAQ599&YtK)d^-sKvFpMU${ zZnMCO8=*vTTUowsuD;6R=~8@(0!j6RA--X-B3&R#y?u;}Ife$CCA%qmuQW}N%c zU*_o;5&eH z)t@Pb$jC~;ausNxzDXO=a}($A{0lLC*U1w-D*~lHo67lwlB%l-?b-dsOu+|3f1Mg< z8QOs1Fl?7(_%`y~&{^3hlC*M`;R9;^)^4MGGD6&S+`e272Cf}|gjAk%ZfQRVsFnBQ zofJx`B&|So?s+bwdBBT|V#a>FT?`LRHXg7aAartze*sa)2x~vyjK`K?#y4)Up#D_G z>dzVojMFUL;Xcf5?Ob*)Tc}MR2GMMe?3D?c@yj`g_Kxn+vRBUW{F26$eRae6DX?}O zTs$Xc1kXnd4AcVrK~*jGbvcjQQ-yiU;36R8mXS2iXRRBQEan0}{ZLq#N6CKX=H)d{ z?lYSW-gx(u;Iz-_OyBL0ov7yLZ5cKrG%`$_mnHF~{w4Z<_ur!r$sAyQj0Ll06QG=R z(1&fTUz?3AM3a(F&|BA;hx4zu*vxfQ<`$!)zo%Zxb38#(KS(d$Js$ZyEH^g(dp-F2 zWgPMfguXH8{e?KBy$T#yf6v`8YUY$n?YFeEvC)NdZj#=p)VP|M4=60Qu1>Tm`x&Jx%vTp;vSfHD>Y!?RJ`dM-~_@SVRI=!!3ZeJFo|^VG9Hv_kYD- zM0pV3x>^moH^#a>_ziL|1Lm&Skf=S)Sk~LFYXE;5eZ3Zyt9v4W#9i7^WFz*kInKGE zxkT9oJK}8Sf1Sl-DrxFtpMOA>#zgLkELCN-xi$qi9i-nl?Tn=M4DR%M zUosmzUfI$f3RZ?SReNOdU7Arf2&yd_itQVu^SLmJWb@crS$NZ}Qiv}V1&?p$3FYSs#*f`?dkvHg0uCD zU-7+_lmxjjk_@pZ=`^42Tz)hTd1C!m)@^vW$+1#TOZX=Tuf~XLQ-}+_7oOM8Y1gF# z99z72xu3B3z}f}* zQhSeMM(r}4EKRM#I^AFVhLCx##LKU$ZS$Z;G>8hB;1LX7wr-i5E|3_^uV4O^!MjN= zVwke`Do%|OrFHZi-N!S?GSp&oZR^%Cw^(R{f2jM%_gT%~CeA8gMa*Y%pN5InAxTiN8YARD;qz|Ex(!7VL{PEJ zq2ra?|Eq#b18a6$I!}xavcPkAcucDg)24*pC8`)tzTv8>49kr)s_kd%iEdNkt-^b0 z?VUc<#rt0SfnJD21{*fENmQY*?-L`#w)tZZ$C60f3RF}lFwBNC7|#*|y6?%=DI#I{ z#Td{L+0?28YD`=CSF2Q6X1U9x)hwfXzoXoc5N`zZ(=u4XkJq$= zfx6nlE(&{T*$iQOWHM5A%ywOU)jWLT%m%jKw)$zKxA@_QQ17E0m(`9Jh;t0{+tMZ% zdN{B1I&8}n@U$dJZTjWY(s4Cqmncln1E;&^pc31&Xf$}OEZ5OxR; zlu>e!3~$A=y{Yw+h8wbf;d&?w7z%!{$eRGFUf?A6n=@PN-nBj_!+Ubn?;qYFJ=it6 zGg|xWR{(*zgKrr)rf+hvK_B1S_UjNA+eo~c;DCd@7Zoj7k860Cg3B7RC!1MV5ePZZ znSjGiFEyT{UF9GO?V~@+z6Tp8v>3{LpRZ9#kW#B(8)|^Sb-T_dw!$0p#>HF_2_;uL z)iBD1RRQnq?p*)%NEV{z7+IRxD`?6xbhSt3*(qA=Z<1^+FX1r^-n_yzEiIH$|ELIs zzEs%rPIm}Cm@rdazsWvcv%S2v8+xHa5gmuT*}BzsbpB24O}27KTFVPQDH@`=uZCuf~EN ztb^U^RJwa)j|f&qzT#7J_YK5&a2mSSN6cQC7)S?7r;ALcMLWd`0@g8{k@$LFHR!(9;EJVRM>m3=XB{N zQ!h(fjr2TUeS2tf5ME8P8Z*GQ81RB#Bg0YC5~X%@#?SOO{!XO*P-Ay_8h3Q3MS2315Qt5^B^7nQvY`s?O^^B3Uq zrHCMJA_!YMLzGNt?6>X;SQ?4mC*x$hL;K6pjcR97(JT45r<}6KkrS40C1mw1amHnn z78P$Ya@GJsRzc}Pyj`9lm)8kiqc7T%-OJw(47mXpN0Wmm6FvBzT^I~cZo6l074sM3 zz_4gYP&4<@k8t;RVcst9#t&vJx#u-EcC^aw!=%NJ?H=>EuJo#}3av8ljgvPx+R_R_ zi|e}jCZntT)OJQH2IyHID{rKxt98h25ZaOr>drc=?NnT5v((Rt?FyK*Z&l-(y8pugM^Bk_f0Q%NKJ$kzGT)|`@@=~ws9dDbFymmbqd znCrJ@fEKbIr_ZE(9SOrW>-#128+3gZ!4qNjKt=C6SE`!|tmRcJ$*vSx5#i(Uu)_Kr z6Y&fvtd2lAEyY$i{5IKBxeU$_%_LO*Y7At4aBMxrcJvc=REr`r)eZGXM!q#$i9On@ zL7PbXIw3^NeEb>0mF#8RC#05OY$H->T@~F1?8IBgO(vCi$`Yq=5bL?04qv^uL(whRBZil)BnctGtaIyKn36xxg+A*E-Fm+G)mD-R5s)r=&Wlk@!Jaxe)?l5l;Z>vv>O>XB%X->8(_bG1H9o3 zJjZx{#D}`Iq;xzxhz3NHI0$EF;G_6|^?~s2HDhM@qzqHz4%36z%)cyA zBZw2vfXJ|n4~|j3Nc<(dPPdY}H+2t95a|lwuc6&j=NF%79%4MhRqwqu+bDR;bKS72 zg^q;D{%IAG-2}tvT3lb`_kbj=ZUzpN*D%KY4E5k}h{EnPpTPFad9O}txnhmbe`2Kk z4TmHdE#jZ-Da3KgN|=Sz&Ke`o_{0AtQlW1GwAUtMJ21u=^l+8j^GzorU+BT4jmiC? z6cbh|dOB`Fix9SWx&6Vf_y*k+x!8})XD`(qr1i#BQgO5Ydp*VTcTxo?TQR_@sC-FL zJ=u&Y@6{bngFTy%R&q*m8i!U0kCtNu*PGP7`ltZJ%2#|--7XfQ3RHtZZTYZX)>!?< zFiRD>g^rqpn0|;1FS*BlX(W%_Jd2~wrG6Q(DYy&)x?R5)V8Xc}K6G_KrzR`l88=`$ zO7-Ymq=zkYz;+=|&4(uORlTTRY;_1NHlR4VWqWyOb6yjE2`C8i)~?yT{n~XHZIsx^ zKRk9hxFXtMFs9inhyLTi@4hDcv+6Wa{qpuNxCv$8_3m@Pdk}XNi$gWwsJq{VH>K1gR+*bvoo|T8l?y^TL1!#EC2Yu z-IoVy7As%_H{dHP*iy=gEdG1{s{72u-_6fnJEi;>OrxTa3E)33Nw@)iMz zBsx~Y&=t|k&e?>z)n+|J1rAaj`h*Ra!)r&?7K-zxe8>kG2G9_N39n}Fi5XGlVD!c@ z@OJn2T!GOtk$()>JK&yfTj_=EQbL#hZL@$7hi=}BCaTpJ3K`}p+n51yha$r}psh&a z7v(RWW!J=xvNs#ZG1W_L?2GTlcegLPZ>y3s>S?1TKMv*Zd+drjp=N&G0e9w57U9fu zVEi7d%OzB27psWbqjyRQns+>MkHf=D=EgV^M*%l~DB}nA_BeM-e=|5lWS^baM0$xN zvJjonE?|sD!Sc5i=Ol2;aLf1P1>;7^D*AQ!WpId0f~g&7;iuAPHc2dNg-5h&tvWKSy-`zQmF2%7T>0p@K&9 zoPO1d&8N>&8fD@Hm6cuY`8$r%x9vO+mM8WgUd}l>b3@Icd;5WRN*~=#s(&n0f(-$G zRI^j5C-L$F6EZ#CxFR%!N|kjrl9QaZS>>&g62fKWfkIm!Qrer>OdHo2APA#z8^!nFmdIwfudnnxd zrXpav?`Np`{pV@nwZ8Z8C*xVVC>us1Vtth6#n5nAJC-cXn6^JB!4KXHEo}8ml*Jw> zY82@-BX6O-I#a$9CRu9K=9hGN3K(Hx23#6PU0?BKehF!~EzIwx$fSf#-_7RxTnRP` zIltBCV=TV}6iEI85`vrL z`rt=T8UE_U{Wsg)_3SYXCALZ*w>6duE9e;{(6QXK;h#5L0V(LddM*y*0fQ^((ZzGp zw!Xa&2#B=(B_=KT=93R|Xp_PGr|5dA#zJOK*p0weiP&e;7>u$9h`quOfG}ofaJn@B z!{#5zXL`GdS3_(=Nxt8{p7s12c7z4|cHyJaCN$t2Bi}vfuo!N>0=WapcCARleZ z>^@VeMJ5rrId9bjA4cNgc`ImOjixUeX}tK`rt zV{#j_i0aCu9p0#?mxYCbF_WqK^$&J*OBKXZ94OoL)ziK|IGBz4R4=G(qCV`CqLO<$^RFBN}Kt;uju27)ZUS_0FJJ^|b^x?bW6hT#)*>ZAH z2aJ%E{~d+U+7g-TF+Df0MPl!X2(hX#<5*bNIWbnxG?rHukEUTl@{Vxl(>;E6ScAoWCM zANuD5|Npa>|8;~bKZ-j2UKPb*3mh)NWfIucmE569TPbAM*<5zTu{d@iCZcFelPFS- zJ&qvMdO4CM(;3qc*6CPT5nfESBWtTntq+STTtp++604};7NKM=_&=7}=ycnqw;qXe z%mFqf2jHEI^v>`5@4xOR`qdhm-D+n{Mi>G=&?X4BAolCeR0+Aiv1%BXSOimfp@h^~ ziH2Ugvv-|B&hO21Mc)pPENU!FRjlzg$QT92oLIiT8vOS0@lgSekSQINJuA$-&E3qD zOO;gy-s`ZY|l@rnTUye#{T;AB>Er`F2P&Yx!H4D&THdb|Foa^iZ;**Mljd$ zw1`D;y!hWWS^ldgXLHER)6OUV5e#NnOb~f}?4H|vDO>zszZ#nCzMKE!+2{7c4_||8 z#J?wkyJ((VW$sEOSU521ZF_{@OIcG4$XHD=V%nIlK(LKrUe7{bt;y33PJNTO72E}O zkOFixm0j8vcG&UO^B5{gI^z1d%2!EsHC`c$q^hj76d!%2ED7RPzLE{e5Z8NDy<%BT z+!C*AY*5j_AqmOZb?94Y5_s_wa@pSQn2T1E)473ypW9$dgR{DXS%I>)YBoo+xhC?G!$b0aa9S`d}hGc&>Jw+`(ca}?) zUN;T0)*;TreuEw3>C{ny);;_cH-i{CEv=FoIS*Ri#s&9yeNBv3VGZWV}e^L+= zamVH}aBF8J`ov8!7=P1`vDREbLKcueX3HquRgtog8j-OcGQ19+c}rz*6l;3+y|^)X zl+MmAJ668MDeIN`Wj58z^+J&itTHye0wH;A2|xB<+6e|t@gVsXP}XN-P8vyXW%GuA z>jAfh1G;g*9B^j(3XyMC5D&sYUcNQ)bd!zc2$`{WN(uws?!ET(`=Ah?#wD?5J$P|_ zt&uQ2IrdG%uur6#0{`lAoVa}=E0^;#jrz$aNs_Y{MGV3;wN&4pDNTnBoj;!$72Nw& z#3z+#4gq(*m*o*~2;?zVmh3xJliInjkC8u-pH*)CBm9v_IePF^IP(!lxsC@xk`GQf zs^$u^3@iq|p3qJFpvD4b?KxF#nNyxT*wXn$UrUHJAaFY0l#z$q2RwoDrN7~-Ew1i< z^qI)6r`|yWC;o!O|z5a(i}+i-n$cgGc8TvIh`8 z%M;16a+HyJq}BTIU$Y7-p>y!MVOGNjtWg;ux^=%hh502M+yunUqcNw0nhb2*S~>P{ zg1_Va({CVxe5s2@rgmHnXE!5!I6}OVdy0j=4=5kd;;=13R{p@ z_j{)0yWey=BcyhyulVcts3_8ZEGL&&O8+e%IWT{|@h(tYRRbs192|mWh%f>w{wK)!9D~@64h>} zjOigFTy~W2Dnpo|gClkLPZWo_db5Mhn&>_UEpbuT+X!LiP1J|&ZbRJ*`vR798a?Ni zxi*O=D7NO$1ELl(F_cCb@cePj$T64KLZqS<80UWu?Id6PkENAwc^wkpyOnjN2nyh> zJZ2jJISQ${6#Tp70m2^z#avquA=zr~3JV*iHb7>&$7Z}EiRF`QrXn>^w|bN4jW&Ak zymA3~hM7>L4)c1c(U+yL-r1o#pZ^ZZ>` z#lMHyq3`sCY z<({Lh*3@wpn5Dr7kB-JhGkN%dUXs8PGcrJGjJUxGvlp8%snFDCt!IwCUv54Eqj+z; z&{|j7qms`&G1f4%{s}0l30Oc|BOvd}7Oh`H zoWqQzTt%6R98IjEx*Gnm$A8Ur_FX4i$}C`Y;zsuw8}XOpl^tXsF>3fbZykTbBksNV zveo-c=8SzHe?Df(lP-DWHx58Ec9QvU0 z>DVhU_%qC(VW6P`v%UUtY8?k`YwZq3A|1slx!nHILjNBv4sHzoF|b&|x4W2gr*|ub ziZ3|foQm!tbIzGymT)1P$2!bLhWv#>^zdfOG-zF!Z` zm1KDARJx5ae(~x9J!}WHBWt-Oc7i=hhr__c*X3(%TlVMJ_ZZHyFE6T%VAFY5o@Hry zQ+>K8CGu9`{_79#`vjK>$AyXI83t_j-WYgr7GdG1zzi^=GpE)K$M?n*tVZ1tF9kbw z2lRHRFzQ;-Dl&u?hMnVHRSC+q){W5BI5n2O3cohmqb7wQrFckvXLC4-%4{&6h1kh$ ztZ|od>xUr?)8oiT=g+5@caop`-XQ8yV^Rn5_z9kqaDMCUa`7bAb zu0|2v6U&~d&2P7;R-}iGQ<~9MsU7eNM&?+GJUqd!hR2Lt;PQ}Z_!roUmsI2i!Poxs z_!)q|P(kE_K*8~=CI5lH5+LnFcoioi+Q1%DDpn^L@0BIs`l8nY0aO8yUs#AI6~B|D zk|n@3Ad`8yj{p}_PaS+hr-+w?TAOKO40rqglxlB6$E8=^Y#;QHrU%J7Ko%g58@iW| zWtE|QCp6Z5VgpPm#BreoSP1i!XI>voJuDV`LRVKpTwvfFe9hIL{^!DD)Xd%6nMHG? zgze7vB^(3j=bMW4M4x2-&VP- zuX0Np>dp;{xUN#ZiaTKrT25DbXQ;;sild8vNnCFg3^47FU+(dbGYobE>pJtLVzvRJ z8&%AM`dDbPF}65Uh3dIDOo2Om8)g)+4RgY?PkQoG7>)088y~=w z3%DUHr@yV4^HfXPfp&sHueaN%*r01PPq$H{3=*Dpp#oJ*Gc?*OCdbP=Fvk<)lC4vp zE|yoAJOKqqoHM9udIOI(#V4KWYcZl5G$Xuira-W5K=P1_W?q&<+up(L%KFS$iD2~0 zqU!huCCZ28Av=&xsrUkP%cJ6)m>kHC_Pl&w4e(8@rE`%Por%LWjCae2V zzL&_5D8dw+jB*#92B*(JC31s-u;qMk;+nL=s11X;;bW!-%q^B$aJbuoJBge0vfS_} zBzeAU#Nh$e!8aZ+1b?Iygj7g63Pt>4{m*0bp=5qzHucte)M#jrY5#$4^`nW0zr~HI zZS;gF*`9^@`UO;4l^I+vB%saT=YrYuqH*o06Ex{#-o%1M4l)*=?d}A#`nZoVFK$>z z0IFKZJJZF zdivqRuB%X!9U7o-ZkO9@cbo!v9liCN85^sOow|QjEu!k8Nl^65ELwH%?roaHr+bqt zBfJ?uO?);no7f`8_1X999&S4aH?QvIi0@3A_V`P{<_^M5D^uYUPy})ApLw7hst)W> z!z=+=Aa9lUg@tRUR2JQ=eR(AOymP0B1vz_^c)%vIWk$vxB3g%T@3e$sWO~$ggvFol})RF<3*puEr+n^C)rN!`S|~izQB0(tl)a*u4t|?N+X8lx%birZVjW`0+$IqC8T!C zR6)GNek9daIRnccg@G{ zJ`clKXIlbqKLSTXvbu*i!W1mg!ag=H`!xU!0D^4fYgIYD6(x_k4-8SF)*-M`Q%BI0vvb)0CJ&(oZR3(SQWzR*PH&YEV~T$!Ur@Dbkb>cqnf zhm7ym(wwt=B62x=bN|-{sz4MF)5M5FcsVo^IG=VMp*{0YgzJ;UuJM>mj8yWIub(!U zWuL>E(Oua7$9-`O7A8{gC|iWDN3L8&WXvWKTluj!=K=$HF;Jclb9TcKroFFkNVEt* z!y4i|9iNV$=E~jl#4!RWc99@QB{yHx%Z#46h=a!!leAo+6f(uzFf;rVp@9R9Y6bG^ z;e@M@(hpyvRdWZNvH>p6d7*t;U$&fBm{ed@U(W!P409|(gw z4$>9k>ZBBtML2iQE7^lVeGz9bEU@#&V$&M_a^+}b2@cYS2B0=ro!XnQH=cd5Y1BCg z4(P9$lPFIdiO)e;fBOonYXHpWIIC>|Eg@w6RQ;x9L!{_Nwq46rbdb5k>Xr!wKXHLG z=EN$SkcA-n?l|d|juXqp;v(+i%x>JagvfQ#S;cJ)@O(bynkLy!sbd|zcVtN~i=$>! z`c8d1S0NgtOVaGvOWeMd3%eD?0n0|%-(B5YoH{Kzfjl{wOx`KG?Q#*`Cfx}&rOJ1~ z)4ztBtHEZT#9V=4Cbjx{yO7p z-|G{ikbS0xjnMl&AYWs-zhoT!jr*L6;!W-8E?|ETw>>bnEl!jAxSS zF4wQH5lz=V(WUU|#uW52Sz~dahRPdEVA6Mwr~@T9=qlfq-8pu1b=E$_7C7nk41k>{ zz;d!IkY8QD4m8Y%qFlDe5TJzmL34_P7VwGrRAM7BRsdP8GVCtQ^W4g`tj?$JcA~gt ztGdyRNSId$Mw8|2JYk`RybQr7RPDXXP1j4!7%620_swaOPtB2PGlwtvl?26Mx!OsB z;gp5ZXbh+h+`;y%6D^m(8h9|Lj|PSp99>bl@>0yZ6?_}!!Zqhw2Y^+{H`?L`7v;o| zMM)J;OHl}yRCzw5J;E^9F1-hjtN?t;moD)a5Cxu%77~VHchD+@PC!?hsN?4LoOLx^ zQ?0O{@QL57fXkXR`F#~3Yf@n*ik#a5!5d7QPVDiBBv~OB4Ww`k2L?9( zgjvD|$Wl)V%>%@dwFPvtc4Y8o%^Z(CxuhLmWWoBZFEhy$h*}ji$rC7<<%(1 z{BR;^c}oms94nm;;r1AwsvMq*)N6!ALOzVUqh|MK*n1x@&Z$$A25#_J)Ot zfOX4kGXSy~ow~oJl19a*ocKw^WRf3-Q!-p=q;1czbyIVjTRq}^x#@)q6JhtTpYklp z4G^8e+g$KO5+c1eb=m?5R;#jR7(>t6nP-|}Up;1)q){)y+KwGVKEK87qph6%ur1f2 zU%p?=Il`$apJ3PYY>CLaRDPX8E;M!Cyy+;3@gzgQdhN1y&*A74g#+}uupwVK)oPb5 z2`_MB+un-b#35lrJc~U9P4iB(*5d6H`hyCAqd+QVmGLadwOOHy3`J1Px4q^C>hbnv zzeciztQ0*DXspL~eYpd^q(bjJw)3~4@+Helf1m%rtmZ~>U}1H-flQ)=JM+sht*wf3 zY@IrtZ&zLn0iHu^>qQ6ruuNmq?^<4n#->u}wHtXpkHkg#x){$)p6wjj<|Awm5Oo(< zCky9Y?s^O3IFBDRdtYCf?QTGw9&LKPU6l7koTz#;&IhAT>BDW8rR5nNnJH!VCY#dJ zPvLX(FIrJ7Wr%TD?bDtWi>~V59hp_Dvr#RJZY~p(zs{kRphs9``9HhKIMO^i?Tfmpu#E@)q;;h7(KxOq18d6*R+&i2 zZkX}JBZL4kGgAn-k^HG$Y+=swg=7SA_voT+xAOK=;Q%qu4BI+xp{tz%ud)n8+A_v? zw4#|~zw{A&|76q_Bod>%{boD9@MZL?m+Lo_o(UMr(!FAL=5SU}&+d7c?cm3jo>=-I zGCNl6YdtI1I}_4(qS9n<6sPXV|9(aPdOn7NQ;;ApIh}xm%{qi-E1T$tO>Zdqw*XaT zJ0@M2H*{*xa5gB#B{^q)y99Pl>vCU2ym6h!wuLb`H&{*cs^`E6dw@R?&b9E1cjkr! zaxToNtaS$pq`ihl;^8eeqwtr*E7Pw~WR?``H9QTUztcaBp9d9_>I~RBUFm-<@_*WP z2PUthq{X`mrPo{2Z0m&@H@+ko##{k2e%Rw&NH=2uj1b~(K4o1o*aoWJ0^TcMP*ajL zKHjYzee$v1nE%1-T!w*x!Ci-T$XeJfgPnYcsH{TSH{nNbqTbk4*D8WWe8)*0Y4^Wo z#7AvHR_ej4Qf`)RY(71^a6oElX<$(3y5Y(8c;Z+3+}S*O$KB7%>Hatt%nn>ix?ddG z80Kefa8N(l^m-O6Jhi?yJGK5W>H!Dd$R|b1h&Z*h1@ZeQ3ci1Jm*t?8z<+qx3o5uP zClGMsbP4ToN=)x7L@=Kq)eaM?l}w~HL`#yKMoxIHYpsW$Sen}^^Qgt&XB6KHel6+{ zcj;vo`MiJmV#a^EFFr$S6y4S^I@noAd>O%r7clI7im_Y#{bPAPkvlfhafb(X*WBwk zcG;g%;*m8R>yr3HhhAA^xe{DtAS@EtEl(NqXYi#NMyQ?S5e+(9s**BAt8eUQ_9+&&$P&t>a`fu`X}sahZnbs&tiCVMbk1% z;p@0ppv`0wE(a^f{-9g_-yf`)vsuuGA%_S1#jZ_4m{ABKGos#W{WZ6C%;z&-J1!S< z@zrpZAY$)*?`6Z;u(TdG2M@O)$5TR2L{qK{!FfypBNR=~8+%l?R5isa7hpUe`O$^Y z6x$fpg^>H7%mTka!#wSXc6t~5uEsPoz7%E0 z%B|SO|8$4?uan#5V};hjVQRJ8eUN~rRNPl;%ew)?KBs=A!X8X3gBiXb{v$9BucsK`l_3%qoAG%W|Kx;f9!espJ7tiOMSa;v5-@2I3w`~gBW(((Ug zQY(33jgFw6m7;6Fhp)9zS)vyYsZc#zAzG301DRz-z}<&sh(tRa9+aS9**4gSB)k4b z?Fx$^E^0oUP9slN3-+&x`TwL#LZ5X764S%-c^{RZYkjNG^M9%z5%scrheVIDr7i2a z00d1g4B>LrEP=IiRfQ5ZqbR)A%KIq$x*W#kmjsLtmbVN}gaaB)pY?Y(2E6(YANqRb z8$HqZk8{E_h{S+UQ2Y3CTg~BOTH}l0+90Umvs?3RC?r*1zd`a*;d`k7&i7%0v4G>ODmR~-#TSH z9~=Zz_?ZI`mSo+k9$eL|O3FE8F9P_-CtfK2s4>zpN_K5NO5FeL52Z`3-y|#BcGmw= zBB(5hxKU`)aVqkrZlk_#8FSQ3H-wpbb%DRue-h=JuoC6ly`wZ2SkkR5enM9N?of1i zfmq@u>$>D=KE%p20&LzuAJ4!)?pLa2WtRBbwzE3Bx7VpHA_ZwlejD-Tr zn$}HhWM`PR9nVE{8BTiXXIA8$_tkTPX8k8LESEOuxhO(sRnBAL0UWzWiqw?#pwIydBhs8T<^f8V*H|>3M+XdA9Pdob7Ir**6_~I7 zHfroJJDI2G-^^G2dhpIaJ6~6i@bN!F67)D)yW6*ha5IR>&kmhHXw_IFsAGo;e*r|yeRo*#4W_fZikF4Yg6JO@We34 za(;mi)dG3}xcxq-C;n`r_r3G;TUvJbPyW%2-Jc2E|7fL*`ovYGOP~AKZN;})`&GI1 zJQmCCe)pOikhBuobB`j+K6!NSgXhvR6?qC!3gXUlbe7m{Z<->ogSH`Qa||F{JVJYJ zL_RHiKJFg8i-oxPY@X3d6zR>kGRYYZ)vAz&!Z;5c_&!LfUi$ejbK9kVS|UPB^20wY z@rTR$ua7y;w>97td(CJ@Fo@;h&CO|b%Y~qe>?GFJxb+?R=QQpXx5H|ds9zG*=`AiC z_u|}zkMX8i*NbeWxG_g?iAV8PObN;^e-BKPiGSx-Q*ZgS{@H@U!t3Av;e;+@3i1E& z(Fa^RpTMi%J`AJc>BvML7?MVoD=Me-^||vj)}EH z^vjqbF2D9)MmzmUjOjlfv!_q&e`6s0v&B4#9W@TzqXg{C&3G)GJcm-D30*ZcEX|$h zmxpv=5ORinZtj3F)KjKrxjDbUTGATp&$XSI^czDbG=EJ)J%#kY{y7a~>6ic0^R%@7 zox?nDau{p<%$`O=BqPBUR_HqSL7tn#&9@q0rGh~)H1hZ1gbnKZnNcqXm=Un6%~A=* z--#d?q4cf*TAM`1A<@li*q?8rrmhI9$p?H1bb0m<=WC1f=oS2jZ($K0; z+kA3@Y>|&_z2-N_sr*sw?1Hv!bNHN8>S5gZ^uZ(eh9xFq(=V*;n|W#>Y*iHMQuZaV zJeWQc5^aNG@mf1tVF_NLj+f6Blx({=PwMNxVGEJ@+cB&uw=MqBA{h-Rnb1F4WUc=H z{jsVg;cb55uzuAqE(7pLtvZJv9fdh~Ojbq`?U52KV1<;Lf~0S4U;QhR@5+yr-pP@! zkM)poXcSgXq$y^w`I=gA3cb&KUEJ&NJv;Q_BQEmwTMaW%9&ZTNw$)E=IXiaf7Sa=# zZRbUWZfYdxk@#RBkh|=uZi?mDMZm=q)gwQ2hkb=OWY)Su4P%^6=WZvVFJ{%&4LP9k z(yP1PYy_*@;M9pCH+)q6EJii@xhVbNjXt$mz}Es+@nffg-xkP^6WLxe)?CLNm+}q8 zOCI)|Jt%b(s=mK)cl-J>772NPLBk<@yLFqf&ob%v0ns$HQDS&SBJK!6{5#cydnjFU zNejIaJh&jOKI(IxSrY8pxXOciXU(pz^{l$s`RKpgvegncyZCN*r^Fg2+PB2Et9_6o z4CkGjawV&_hB7etSKz9rUAPAArb~)%0Y|H8hId5oSFWSci?)P}xczQ{36#JZzK3EtfCjGhTylLGlc}fs~CqmB%kj7dMTcZqQ|(Eez7aN>-kX{GzgXuOzi!q z$zvGDkz-Z-jf}Vc4{eCT0^J%HqkCrbF~*}J$qr3?irIuM_Z#xKbch|_Eg>>b^X6R{ zqIb6UeR4p>H0yOV*k-lF-iRaiIqZk(GDx}2y|w!|+uOD>nHy|XoJ!V=SuY8$vBHE3 zXqQAF0e?yOMfn0dTF|f&d-LU`cU6MkHQ58hMS1T&He`#m_7rR0OAh`x)BUjwZ)i1{ zp-ZJj#zP{F`_nw#>gV&%lJE$2c$eFu)So*6ghRl6A3j3|T&ZlE(e8#z*Oqx8;C67- zK6;AL5Fq8Xt(kko*3VhBjk=yRhJuEFNs$%s2zgc)Gyxogx_iwx{92Uc`{jwM%8g(3 zR${Qm6q)16u<;Ae4!CeSUzJOg684jG{1+7sEHpf&a5?<>0@ezqVc=VSYzZtI!`y+M z$*yVy>dH!d36l*C?V|jIC=3UKcb%@gF&b*{(vX@gAim-67BtA~`yY+))&E+F*SiP& zlo{Fn_7lNaloj-HqUYx8)r6k4Q2*5zA#hfoxROp{Nifc-74p$_nv)K-LiLB|)toqG z8R7wFHGK<`5p^q)sVY$p40!0pS(B`-bh;W4?G^54QbC9X`rjMX3O1&}jAvoBlYsZY za9?qo7(^U+vAa^ktOy&(+OJ9acszlyl}Jvj$~~vuFgL9!CQ}i4v1z}q8BRXQE2Hb# z#lFPC*OCmx^0dD=29|Ar^0P0@;Tu+;9;!Wjt9>GS#3paqm}MnZvt%6P3nJ0HaPe(~oUD=VnF^ ze05c2t>cOMx+)*5+8}4Jx;+B$CW5{%)NOvJQ5!l8y~s)n0^^OmjlfUW^sNCHvVLc8 z-*;8H_0eQau)NgDvc0q~R$yP@mSzICe&)IGVsgRqpR<4}Y!hA(8g(>it4~TfSIt3p z4h>$Z?%wwEYcKuoe5MsO{?Qa%{js;q>|G94&3^EsnYpPo>z&+1RzfD3Rg%ASf~DBf zt{dG_^h6^pWG2$rva0~%Bpe^?;ry?&#lSyDt_$upIF4z{ouW3xl-Mbld65^{1zoVX zL75nWSq8QvZy>vwSt9}0e(J-k;SZ2#KD}C}^L33tBv>u{zD(8^^Cyn+DYzNhFQri* z+s6L+H6rQrldLma$6r?_E$dPsN=pfBJ<_~c^r3@nF(x{aq1Ytb`jvD{U#Ql|S73SW zdVOd8!Guh;*OnmG$Y6UcPY4&_Z3*NWS2cy{znChL=6z6gH!=tZOu}*WWQOL!H7h9s zSb@{d4lQ$UqS;vpojk(8L8-}tN!J}D5D0?_3&oJ+bYec8w!J8Xf%%GCNmR;t?|#0l zJ_$oEA?t&nx@{ypdJ!mYzNp`iu+`0!xBK{czH|t;R%b{>=gA~a-gEL<#Y;WvnaH1X zs?1&T*|=k*=tcH^p*fN)MDE?1%ZNN+r31$1(pcQ}Ue$ zMF+^z5LgttrFVIRS{!$p01u`w^Ou7zMrbPXKWN;Pw7sjN^6eV@+1Khr;Ir8cfx%Eio0fNj$XR0c9eVqqjM98*SN_J)URz0?_Y zswqB$tV0o}ZM9FBDxaiu`~(FTGZoH~83Th0pX#QkIkF>R2Ol5ZRGzd5fur~(wW(LY zm~#{WP$07(OL?ff?dU90Gx$Sp_Bl^zZT>k>!lyq*zE*I+TaaID^O~nIpHhzMHZcEn zoye`;=6aERzm-0T*>JVHuvtE?#t;sCsNqGuK?CEObC2w|1-cu#tUnXi4vC?U5>-H; z0`=^75UslUVhct(>$8(Y6+D_1l?=ma*m;dU;udq$5}_|c*fhKz@SCD0eh&jWNOWkc z8=RXMovgkn{BdmQB6h&QmII;fm|aN^^2rGuTY8%YZ^PQNR8J=#7q$&^zNTZ?fpBUa zihmzr;ef_EQn`d+TgupteI{^Sj;-e*RvIN8`1&Q!bv<3&c5NQFg+Wc=X_(PturPJ( zAPqY_tFVvXfOTw=)ZUang$I}8c8-ntW;0rL3tPF~Y{E!K`-t!YMW4M)=Tf-xybjco zxGpv|6~$9navmv2e;1aCD|gDP+40l$x9Zc>EQI>mhBfB>`gG6HF6U8(mHV}@-f`|w4~%~+PjdXdJndHEoE#>k^2d+g${4~@@fz1!fj z;~9gc;?)crg+^s<_tSc4DW5

E^}gXWfL-qj6V#tR;d*js`e#W0(VlOBXPj2@p%7fbXT_{No*lBw) zq@xH{<_F3Zv_EpZoP)C9Rk+Olhj>hZEqz&Lm91NS_@! z1}K1HbN0#3XKY!kgW{mulX|Y+BHKT~HOFA2Nw*4Xe3pOE-4y{}3c25KEr*482?;7y zZ>dH_ASmoFN@BQK+^a@SmjxERKxS0i9QV=VJ+^SmI{$|+o@X*2aS4+=BTs19vllw7 z&~NiH?pah*WPwk-+li{qKZTWIZ95Owm$S@$#3ZgAAgrht+jh%&uwRR+!|lUF_e$<9 z;`Zes(gU%p@wt*Gy~~g26zVJo^Y+fCS#oxA^QS4EpDx z{!d;+&q~pP2$Y5O<&ckQB`Ocf5ECLZE9)hdDMsr8AaCL|st0J1mr5UowcQb@8*uUSqTNI)w#fKNw)2(#h$&2*^GGUspX$uwa+aA( z9W#R?)HdS$3+1+>bQWANu(fWPhbpc{{g5d)WcEAd`BfN+)mu&Mx@U3e|*`D>51fCJ4pc5)~&ryGmri%o5OIHbmM zB5|X*wLd*^J?~Nc?&Hk&`%mpK#(Sznw?RdmWcmEHz@n_$r3fSR@HcTPXudMvii*48 zw#-#JJ0_Uo7nG`bgei$HDu-I0_g?+amNzHUg-qW?$UuTaVH@Ks*D3q&pjbflBp84Wxi)T;2)8GH1|QMkHJrf{g{$|AhLe zxiJ79DPVGt$-4Yeo`IqHLJig1M6E&ud02Hq3_E`8HP7nfkbT%3(tB=YpFK+?E};lq zsWez#*=LYk_0X%HLJbc~m6z>8cZ3<;IS?iC3`@e3*`LWqj_P-)is#f&|CgCQ+ zKzcwYygvPkV}(C-9Ppfm_uH5iSw9}(bUVRbcPzFVIEf#uR=v|Ji^YNLt17DrF!;Vf z7-F0d=-RY1SWo@wBetrrbFqvtEE664NDd`_$$0P*b&Havk#=>2+8yXFsD_6xnFT5tVqOi4 zh0nnDl6S!3Ma2je{3IAyp+Z32;M;G1be!A{{l~B>{jp6Ut zaktq`UxjSD=TF!g7tD0fc4>|Mk`7d!-MXw#!8i&dH%z0AoM|$v8vvv2$*FChrUa!^`yZGa3DF;d*`u3d_`MIkh1`Gem^?Oi=SJ|ft@lXIUm;H-Z4Zi`>PWc!YEWuQ5N~2=RrfV7s6`swr!|! z4|~~fkG2j14_;j~L*K>69yebtWuehpSw2(9o-j9$7xe`JI@wr^I!<=yXF6oTJI zzfde+V>P2^8RCGqK7`u8Qs$5`pFXTjH~5YqRsG3H!bKsGLGZycd+}-h+x$Em<(m{{ zRk|OFAm6zE)fN6ixW2lKa*EX=*f}93StDl(0q0$&6R3M9a=&{Gx#RhvVzBEG(wf_8 z?!#u@@{+$kx1}b^BStx<@uVmiR6EsC%r3%+kenT?;^^AvYI-ZFycq;IfhoS0g zR$dmn5YlaE;L&aZPdnAB4Mq})2`l}9eKP-6$%UkoFSu$cI_hb@_l*Z8i-FY5A=*UM)(anmFEA^gce| zXKL=mB(9tTrvj^I?aY4nOJiR?X}w<~K)4a7wtPFBoyu6^yeIg;6nadiCDKIZawLv2 zIEWQM9qtsMYS&-T#oC!9^7}}*EQ|3-Y}Vl$)D$)C7Goo}QZ7v1WW0C!tIORjz0=^w z+8TO<&Og|nJgD-~Y|$|mnT3t`1sc*}oJb=j3^1Il-*`MCLMnesylJG~c|^nbRf6Vr z(gE_W@UdaiNv*7}@SVSh$)m!g@`uk)B!rR?NQT=#;XCi%y;J4`O{bf{wvOIrzpgB5ogv>qa!a|Ix&7WQUhm{!bGp$t9dz0Yi!@IJhg&bqWYl8d}K3g z3zw9_h;q+)^+VgW1d*rBHOw~CKb-R7C!Ipb`rS2T$bLV{yIAyJg<-MSL{~k|!AJmM zYqXi-8QsMKoMOzk1e6YG|G<}77=5F{Td!%;Ob%aUcT|tIDJ-)%d>HtB#@aRO7wQR^&kH`hhN~KrB(QtR4}emQI->o80iB+q;(`uka^d_02RM zI)rC^HT{sEs3)|MUDfY4}OZHKo)^0-;XT${pueeSViazE%_;atp z`=-N|aqx0~IBf2SxKJCd>NW&NM9tsgUP6tRlysbLLRx65tJ^+4P!~yc==-+(OStio zO&C(=$!tBLRdxJt`iM;}2HS)WzgwLhigT)e(|?ofU#)v+#73_hT+fmP(4SYI1h*P{oH&0rSvah**OQ}jH_&}n6Rog8((aA0)IU}#gN!|>!0`KQU&1b_tb zfgGzDCKZ{m)9&b&-`$NzUH_bH$_usV9T6SwTJsR9RR1H#>vnQBq9DAY57cWc zg$;EF&f4gFD$0RSfMyIlb6Z)Jfl%hsg=Nj2&f412t85HmjlU3h9gsz`3m!c32xfE% zp}a`q@(DW%h5OrY%o{c!s+W~c0tOq@>Q^^F??(73iPb6(jgP6y%hrs&cy^h1Au$i%vVv<$&HCGCRT_rlz)ClUxl^}I!SR~+%4 z(!MmNq#J!G?({jO*kr(g+vV203vE)r#hrzPREFXBhi2gK{}ew&q@@K+b-{eJ5}mF^ z{#-zmJ#JSZYQu0-X8ghIW`Q~jK^;wi6AWsL19yX)ZZ=fSlMP}1~!!G&~dopakP7K(m%aUX;I85lzf&Q|Q3mX=)e(bM2S zRbc*C3({ajk=EY?$Qru)uCHzj0ry=wzA#Pt>Aj`E|9mb3oy%xxTlyo`8%i+p+5tp@ z-~URYT^!TLI$iYmPRU7uX-paE%H5ldRM0UFmdZj_Q;FAy!|9f=s#k*QGL5aDh?lsh zqXK7f&G$qgS(W-iHgg*y6HDadb;#y*5u#;@6ay`PJbX{&NePPiI+wu-)ekQ{uS;Ps zGI&%OLgM{<`(oh?MqZ2=M7HCXemqAJtiDmUCNntSc7|q3(`2ka%F~VcGkFTL=t={` z4zW`*J0Oo36hFM=(!In}&r(4{%`|D*j0FMk6_%cDde_S71MRocc^H7@w};m}ooPDb zz000#m#;j400z9hWM3rnC|T^r98O!JZ507%xydV$%_FKn)-bAIA*+d?d9%SgCGO+> zW&JH~Pkw)5a6JG;xlsaZPrb?{@14%5IVY@#wERTNA$1-^A__vl@WTSL+_?)E#<1f*PAUBoj0X| zm)6B6Z+8&kf#@gFFozta*|+^CJo?y09ogNXf(syL3@B->UfE1RvwAZo;=e@e0G=aZ z`sraep1bW7!S1GsZ(>TX$%pjBq$V^S%Pn)NcpEu=zY0!zYj!QT!P>RTeK3AScF@=S zi_25@Ri_cTDnQGL%LM@+NepgFN532diSXxBR+5Kd1Yvd7!u|=(yK>8UD(<8YCswNW zpR;YOYnG(zET)CXeHGlQ25_YCiBm>SL{wL(MuRYL5anI}=EL3U@A_4i6fTHaJ_+D_ z*zl&;`gy|sxnuLs2FjjHbb^u0DW^*GLB|XfEV4yHe{?hd+ z4-OHqVac-qdos3w&!|T)`1lG}VctN*r!)BO8-C;Z8%1^t)UZ&#$GYSRry5`^!hV|6 zC0ru+Lj2jl&(W$SKAkd&!j4CWAHih_HY5euJeCd}X2 zt3TqM7o3Qc`tlj+M$vUu;93`B(~;96!7^EuLEc*|+#D0pSqj?Sb?PQGCaP1W`vSe# z@NP>k>m17>+Y;018dOxXa2sYlFLD0?1g@B~;EvxF`>}>dFg2U1Ryd*EQQ2?;H(3FE zkhrnB3M`8NZz~-w#{z08`M{RARlynDKZ(-MW?VUA8;U}V3Xpdl5W5n`KMi3DCFH5? z*;ldCjrUW1#D2stEbe(W&tmK*31jG9J6)+*lFkP*B&XA79De6VM)w5#RM&WCId%$5 z2lWQy;v|bUVJsvjdq3RO(4NEdPp~RCpBzMgEFJ9x4LmGaX9pJZ7Ed17g2mNfj??96 zu$^3TvN+Yp(Pq#l$1RBH4PS=o*Wgf{ufj3<|!ou!Nbe#n7*$oP-r?Y|_axa(%1FEqi!4c=<^ zx=nA>9Lh2-O7<-8Qd_k`%z=16A$P|) zFV^`C;=;o*fg(-`JN*-MN$QDeYQ98RfWVe*j;#fOy+PxQ)Y!X|XJ9~p&`G*A`}5RW z-mbLYA?FPhfJE%WhZnApYChg9c8UY4j zZ5S{H)|8(?AFpx#xj?(309=!Pl*E)X$VYb%z9!OCEb=R-%Zk2;8ya+S0^)cd6&PSS z7-S*CuX$J6WTF+M5N~jDTY|rn-r+*tfXx3=L80S!@t4&9mk&x#+KI+-E2JA;L*_BC zyeI6cuN(vmzih(4hxY?(**Sb+uZ;Pd~;(q#N_`t3<`qR0;n75f35cI3ympkSdF>$h-1Is|WpMBC>CUiFP-BsLBm@yuG&B}e zhAZQ+dREP_gf|15Wv#IpJ9*B9I3p z(%i=Igr=L)kfS6Leo5ScC#|7{@k}IVpxw7)d0L6^bizSAQ!IOD>kZ%h@P>= zxi2Ez{r6aIY(hW&B1t8Z@>?p$2)pdPxrZDatDIvlp(N`+Ty2WqA#I3Ggmc_^UTDno z)uimXeceT@#00xX=!^OZV)Ro4RRkwn4AKl9EyTjobHirQ{>dpi!rYyv_r!3L@DiiM?YEWzd^z^iWYa5 zWfX0U4u9j=i=btN^5Jhf<&6G%@NXD=_(U4wdH65x_4l!E?rr~$a*qK{o8@{VS8L17 zxtBRVNAeR`$|?l2;$OAl4gmn7yX0M;8Yg6<^(io?u71%s~ALgBW#kWm1B`4@4kg(`Tlf)hDdkVkmNS&! zw_mj387TRE>P1fzN5GH$yP%Bh&(inbXG^%e^VE8-EMEC@#X+u0S{K>v-==Il&s>Pi&)J9#vsk7r+V9NJtJXS< z6HC3IdD8mVKi>j&D(7Q24q+j*IPD5E9nM@(b9kJVw}5PBPZ2&tebz0KL%*O zUIBgTe(UcK{4;(WNCJ3-$Ca#%RHuFZo@{nWzU0UadsW)(w&1|Kf4CRd9#}g)9D8M@ ziiLNc*-D{EX{ASeiLkS-t!#k@)n+ zpULgAfh)v&oN3>lowGN-E#|z!E+p0q$6zbgyNY!BQ^adVTWrH6LmQwGwp}lFg?0PY z&?Oq@z?cn3Pj2@q+iY$g?+XUT@-r3F{VpNg)ry~Oai~AzywCm@4fX+>hkB3uZ1M9K z$0w!_PVu&f_nwN8t~1u+7pvji%@2odRg`y~E31XYVe%(>>$rlZ!=*Mw3lG4Iv*`HJnqbHe6-BW zu;?p^Vkg(#C%gRw_j`D6d!u1P@SfW(a)%tfNs=AUG(HD z^#0W*_;#A8btR5JYRy{bac6Oqc06=TFCAly%W_ImX7)Wq52L(3NQ+7bB~(EKB2790k=~Im5F`YoHv=Rj z=X?i!zV$xq`{%p&pS$i|_jQ)QI%Q_>J-^vA^P7EUbOpvr;QxiX0;zs>Xz8g78D~-$ zZF*wjfGRO9qkx4-XZp^s{uF_oxrR2aFjQFf1=gV5LZ?<3j{)C?aFpf~>6GSob%IK3 z=)+o|4)~3ViB>W-XX=UdXRa*B7!lhw#l+fnI6uo`vxyP#I3C{LYco^N`#|1CqVB%Z z`O=!L$zQ)(*XNXgyurmYv)(#A1?PG=;4?^f%=P7?PdM6}&pgToJC72%ix+a&6ZcZk zL=Ctth?Ao3ak?Byq!>5k^QJ{y*95hGr^NN{m*WgOlm0c??cp}n?jm8aMhg^7b^3Jp z{iz80RJ-&e)gQPUtCdA3Z5_5dOgtSQ;pEEQSCksDQyObSf()F|t|==PwRuBfrI``e zFT)3rm4E|O{L@?k{-~K#Nt7ZJk-;}tm+K<9fG|`ep^O^<+XDH^7J~!6yD9l2a+Kd0 zjCffgQ*YFk=ys&122HTx^r4g#Fz`m&q?QCGdJ34}46+El2wi||=ow_pAS#B7xhuM* zBYw`HFfPW4@o6SihnzjHfuu@B$%HJE~l!}GGwhsbh$I6-YTuFAshm3;N;Kz>bv zxZ*%O(tCCxa+Hei7#c+nK<7N<@ z_|Rash@qc)3(#ydN6N~P@aK+Zg30LXh%zX%zM+SU628=^HzVraqFn2x|id- zATDMj7O5PpQ6}vp&1Sy>rR4i_CQP47z1AAubgK$8cxBF|MfriaqE(>ziilYEr)e)>RAybOY%RFqV!{~eYX0T z&uxK(QHqTBMu1n5NU@DwA!x zHxlI%-9$*(p#J39hr7Z*%BIB=vipi9%?kE&wugR&@;I@|p0OSI`hPQffHzJDN4OoU z37V^|fs8Y_a*Q19pz-pD8PR}>vvdb(wiCVKhtnV7U#GVB422gLlWYJ|eaL3p{wkhQ z4(d-=rK;0yV9jamY&%Hhy+386+@||U}1^VLQm@V4LHQ-0GmNHl(%Wab^i2^O@s{# zJlfBBW6)Je0VhKQ^&E;%%At(Qz{r{rkCT^t%XbUuY+gjWdv2-k>^rz?l*V&^^3vVS zt8tRL+^<#buF!H<|I>4tLrVWP!mI!j<&yXht-l+&UE-j6QX zM~N%xRdkW5|9qKhKWZo72G%3r_k;$fbf`B;`bvBz)J)f{N}G(WnVYnfkrHv3=@Ymz zg&AFMK+4_lt)#hollJmC%`;XWP@5Y}yu{Nm*k-YS(2yGWJdEWiTkLh#{%m?kT{SGiZXybgb@$`bQW0?P40q{d^wR^=u_=hpvtGmgMfA{- zfGc@1z@Ky#VQayZkHR}FbX&M7)#oRd#ea9VAK_lWPIPHCcs)#VxyO{RNT!vQL0%8x zfzU5kPfHEqmcimua-s^CnVvP+OUt0BY_Jz`79Cp;oJX6hX>J|5Y`HZUF&uDZF$ReJ zoy6f{LOWXX_8(N1($|5tZeJi_n=y6{n|{E_O9n|>XpEScShX_JCZAD6El|RCac(Y} z^eqJAbuj3pe7B*t4~N6~<-Yudp&&4GC>EI`Z=>SjSk>P7`8PSse9@`G*D${vNI%6tk6YzY04-!s1QAm(AAty$1Mg zOno9D=*Ek>^;lLD!&vKn&}OSfwnQUwHo_9$6s6!=^7dVg-r_NIdkEasB??1X;eGmc z9gJ4jxJ2FeF08ke$-vo90~CUi1iOHRo zCcl)WKP%k}SItTYAF$RIXeb?jy=-MVelc)-MhpQpM~!ZyHj_5P=(_kO{^48zdt$XM z(Dssi*i^R>q;wM4WOERpg5TXIrZfns;Jd#yO?X4HZTUPs8Y9sMjR1kHg_AtH$b{1hM5;pE^ zEN}_+xm9?UCF#nZz)cFS8+rNX8{T};`>F8XcliK5K(~<)-;KQ_?Po2`HCAIxwrETk z$W%FgU%*Tz{RqSC6+78Qd}RkFpSm^o?HftQ+sn4eI;DZKO=4=tOrl1o7zznBC(o*JZO(A_)uFM0Fvo_lB^v05;I@KdU9hB{LO76#r! z7L7fF;Ky-I$7Sre?dYdwf>m;%id$oJwgx;RV4ua8eaFGvm8`8ZtDYug-dQ++8YS|w zUQHMA?rTJki5m>1Ue_c$)V3mhNE#G^QK0EhB_>M}QaIr8bAKuLydv1gM>JtEQ3D>@ zuuqQx45o~tA66eaf9F%G8uRf7l%W$F%hQBrAxu0Y3|2%w7?FKMPwbb*9Gd?y1a1r& zXULK50o&vBXN-RIk?>*?ZDE5n!MOP%V7u7nRD#_{;N$*p7r@ELW5yJlPtVZ`$wx$U zC^Ta}prJ^21J{I~0z$2yazWpG>bpKv4{jLd)Ca`9n}=X|z=t4RV3vTy-ay-r(dL|I zyT+M(W0K>YGCl&O@>3$52coEghnC*h^y9H36N?QY*u#lJyd|uo_v-@e;dubuK=CV1 zw2^oV!HR=abv@Ub8SIA?Et&{;3`$_rb&W+HWSu_N^Zo$qJ&M&p3OrlcI^0Mw15Pdl zewMar7-?P@1Q&WKB2{U1GbYHV<1HAzmGi(lyGEP}2BrW++3n>9Bsnw!Ub20BWhboX zYUNLomfEgg=jgG@NzxWAzNX+Oj^e8L}U)! z*q5E8Hf}Cg=;YZV#U)Brok0MK_4`E(J_0+VNISCuR$b_s=GZYC0|eWnqeZ`7Y^(|E zTa4E&pSyO|AJ=X)S-Pa^O{#CCG&*;qJxx_gII~R`zNX`+2^jWNa6`luXn~R-3CL5? zhH|lo`c+1-B--?GRcmm7@*k(ZHVX@(c$Pyp-xa<=Y}?i6mv1Ku4T2-i8=IY^&-nG! z0jx~eWJ%s#dh31@-0~9MA>_sUki zoEaG*Fzon}hE@Mi+=Ld@!k#ZYd%N&D|;@WmYi*_>tB}lT{rjKZb5r; zko-lo?MedN-n`(%_Ut@8Qs}nG+GH#|l8YX@t>D_{eI}C1j?8ixLvG(b@=YJqAXw6R zQ-5m01VRQaJXi2d7DLDkwuR$L&GZRz&)XXg5pRB}J=JNtZ~;+SCIP+Dk^M?@nSy7P zt4^#nc_>VtRJEKG!FWb(pWnmsUgf9Gi`3AENQ;eQjAHEWjB9Q*?+T+XlUgG&F}THT ztur&6kJwL_F1TC6d7aj`DJ~G=C!v-*DkJ&m?W=C5w0FPg#kwr*P%i2L;P}^Ck0$u? z0OtkC4eQL_WnL0tRhfF;N3uit!b_KHUFu0d%Y~D>BaRL14akRAnrrwd3oVur_Hf(9 zCCeo9!90QJVB9cJlMDJj))4mK!ex*u_LpN;?y&l4)1q}`AHbdjDkkDFVoJxooV00d z_IoqnPVoYG*+He~Q;%hJ@hHFo+)sH~k_27stlfXx?Mf~!S$+H9Mt5uL%C0^QA9^Dw zt~L<)Cyn;S&0LK?`7=l!ZnEX7+iV=ZDSxB1%9O~=@QcB&?nk>oLh0JQrF|?(&;3T4 zhV{zg-lTQ<>!S;`KLRj=gWOl3Sl@7atxR3u`kT|)hdQVMv6XKp-Z#hAS4QezHM)Aa z_(?Ka%?OR7>cXs2cxaC1>ZcEToMz_Dm@43G%CvQ}QOny~{4C2mM_F>fLn|X&j{VC= zm~;~_OPTw2B#q(U4^>#V;10QSO`c@3H+^qmVF5#OgA@q=qEKXa|G)m|1bg(E^zC(yBRjm;rbL}mszzOw0oDp%~ z0I>XGnPsaz3Nn&J1Zpro{k%xTC&fdOAQy04I1GP}Aw}wL?}up(%$++cir&d79T%;>5x}(!K4y>cm5HEPdfcdIR>~UV$t@(;jPPJ z$U5@9=w_7ndCK{BvG$W8t&-5%oxlt(U@?|YR4K)I4kHMvtEA!wD`9kOC zN|~%A_8v#r_;#^K5ih^BNnh<}{-@|s5q4T|fHwmE{iS(#T;luii(syqiUjyZwe+2M zbg9qaoeO*K7tp!|*`l;*g}Tn=b<$ljn@U6+1K*v>#;&>i8F4pb{mj=>7!|$~S=(l~ z=~w>0g`8sdZ=P`KK1;|f?qj1}reH3CQ@a#Ve3kq11G=Z}v-~P1$YV*mtM+ptsnlBT zhN&4e@UUS!gE|B(l6(9Xv*;R;C;>s4r$1?e5h&^c5JOP`P@Xr5kcu?aSBBdjf)f-B zfu8Gzgk)b+ziKaNAVqVvE!Yq*er{PL)bf|&mb2&juetRefseVYQ+5> z1b&FzFim*sH^J#1D4qJl%Yvo}&4tX2ul7#nyq78xTt4V*hW^ zeUzov57uKc>{@lb3FL;CD1BY>llDFRhnJ5ZnJ^~&n-Dz15`3$-xFf2Zzj`m*&~;+S zx&}4v$<}{L{?$v7D16%F?W(jrWQ+1~+KP1HS2YIkP|W{p zNiOIL&*O+g`?D&VTmB_^6Po%XiMZmv27g?g90Vn?&hAcGPhmAVf<128F0|d{$_G;l z{+jdJPd0uvF0hE68601AeJFkQQ6TuEAGj6wd(dx~9eU%ghDaM~0Zn{0RGD#SIQ0)h znFL%?@ku5(!`@MBc!xchMs#_HH*+$Ef`V-$;gc{=VPr}L^~-!~sy!&qYp|~>)fITL zSH1kO+_z3}#1yghR1%)uCSrqc65q3P9g)geE8~Q0r0woj8Xnsvm$BV1l2zDaN)2|$ z9b|wjdMF=oQmVHD6crW|MpY|1LQK-TR2~$G5rzS^cNcU)RMAi`+}F*1KocnXdd@C9X zExG~{Puji+OFMCk7+~#>=j+nxKTf!k)NoO5rLV!gLK%+f?Na>Zeb7ACr(#Z?f@+H0 zWe{8hf>aeq*qH>i6=7((>;C)IUtwn7e0N!7sml`3A-Fd&^Hx;YMTSsOafnuMEV7NJ zRrq1f`G65`(mSjCmd>C>()!e*tq;kchT6u;S$0Xymb+|7*Xuj-VoBKg#EaC+Vo5AH3PR7!?y7Qp&d71%2>4QNc`^0iyZ*>? zmlTGh(wh{RScvIxMy}e@aV7uG=>KOUsnX5NJQ5aM!`iTsU+&q%VS4wL!h<+?)43tF z6!NT%PT73_bgiWKSc)EpsL1zc=hu^&^4^o<=ql)P%4F<~cas_b72i(q`&H(8(pNUX z(w0l|u%adpw;Dr#YIJ2`<~gSCTK(6U6doB#9McR`pKp2-cgj{pi+JilkW=r2n{2Wl z_*D%8KAlvK4CLTyQr6ik`7_gA)Qb6w+rKmV58J552&ABE_29j!Ye-%Bh7WPZ7_7uN?nwRsWR^BR^cs)?pI?bDq+8 zN|p37e)K4dnDfE_ZhBnT%vW%0WCNww>0Lpa$AfL($<1%8GjYxSa{FmdeQOrWS-z7h@vGhOQAS25L1U29DG zc&F64^?gKVaj86|fr3x6oA4J$h9I~C6pz*VX7~H)OZ39a0ZLWA*7=E73ygTPQX2nQ zld}HbNzeaQ73#6MKCn)ih0G}1aNOgOQdNuZUBo$tM@5Cd*9vItKxowyPlrL2g~Lg# z*B>;Bji>$t3gbVy)BgdR^kTN8e;^~$@ASQYp-5Qv`~RX>#i=+n&Bpeb->Uyo=jiM6 zZWF^WyM_+->`eOWwzGHKf%BAjB3Bl%oLvOKYQQ%W#uP)By62kY_ zYw}DPV~Kn(9tvA1ZB?|*HY;}2@{x__Ct`l)F8J`r+e?JH(OkJSgtt)ujRc#qjFd zcK0p*-wMXT3Mzp^+r@>c+aEP=_MFzfs$S>+-c>$c>ZX(V!9*PtOedrGS;O!wLGF^E z$#-H2{Dn1GO#=b?3dvytGWA@+5!yKlTn01U2#e0VjW*%r<5Rp#4!V%vBMrrJ&xNM- z`kj^UI_3`gM_UjBb9?Ubr(P@a@A!adL$#r#j>iBOxh4i^#nk7#bq&0|@2t}Q+zkU7 z@sSLTKv2LGN__v-#+JywezFT(DMM_zeopV;w+Roywd^K&0Bk1Frbz3(xKSPB8|*N7 z;^hj?)7D!Ki6M!+MoT+3=rgtVcMR}8pbusKBY>{0-IlGLk?6QIz8yF|xS|)@iSIzg z|7D7h99bw&PGjTvPOEX9sB%iS`Gptoaw?R(i7h1`L)3qTqu7SF+Y=tp5)qH1*1x90 z+}}rdZh)J|tW<)PYtdLy6x7%qw?%+@Y7eRQXmx3+akEDByl9IU{UH@HfJOU~2iCJu zkf+Rb??NLGKa`7l2;iOI=pB{d^XbTn26&kIfITvw1I@)wYBx)D)+c8 zzqO(EaV&uzzJ!96Can+P@p@t)(Pjy64apo=tzChS&R7C$Aj2I3=-@mG9|DO7=?(5k zpU3^w9odByepF2%ZE+T5NNYVXGy$y(aUE)^&0dhtKJT+IXs6BDQZcqeJ~DXQ8oblN z-RhQ=_|>@l)2I3Kwu^j5#&%MP8%_!S)Ln{6PW$S`i+`QD%%Kp5{}sND`7?`^vM_j; zMpgQ)0l@&+=1YHg#{jUR&)K*dYMGMj%5f5XHy7Yz=Ssn4Ev>?IavAqXq1tS=RFx&v z?eeigd4WA2zZ+hov!IcWDg}S>RX$`g0IcaB$g>zT`bnHz-I4m^_v5AbM@Rl*-TWG$ zr{n2w8kA1w>*y|EKY1|p`}U&>!La!k6;7O#vwY0agKrsh6L!v7aU0+@|E8(p%nZKl zMtBXt>#e%vka^?)*3SL`{oMj1j+53yRa!vuvua%(bqsx!M$VSmCty|Ugs`HYtWerv zzXV6SdBFkR;hX3ZD4ouoe6|EKJo4DeAQJI)=|f1Mm+tbaC?&>+i*MKYQ2s3RF)2Yrp3_SL2Y$&=ZEfR6*In$M}yfsgK*{8VSKvno7elBcI%V!xwm}efOOtP-X z`BJb%g40G6nNG9(nl=bmgbjU((svlc8W_qPziZ60O+*QlN@r{jkK-tXUitNafxA~s z8KObDgPw*bFRyauAYqOXmu;6|Ngp}!qk+iy8SLU`d0aXT7=ykhqT2{Qy!qw%l^?AL zS@SE2Zp+MQ(-JvFyYduveDT7wLm3HP#H8{r^@$MVnBs6KRYRo(N_;K>QG9yS~?HIOFZ#Ein8jqDyLgXACfDfMYHG|_o zu9W*&ZvSWqWS>oQ$%iQv4NCSoZI;6%bUWK_{6j9NNzbB+A6L>+YkbgqK1|9k2b5CD z0S9+sziY23(q|1eKTG;Mzq-UYy&orc6;aq>&wrIU`8P%$JEhSX|GuoH`TYQ|&XZ)} z?Q+stS4^@%5)g@x;A=$KJvh~>H}$8b62)_7(1hjN);uE2 z0|>BOVF11BA8qJqjBi*-==O275F;U*L3T+R-D|4vg;qJJDk4}t52Tl61dY|s1nWo z{xBJE*aitmPrip{ zqpnHk%+h^ZeOQMc3!8i{upZn}_)%K%2j6|Ldvh>XR*h)*ZAx=WCY^iNd8qAR{*tnR z;K 1: - base_env = TransformedEnv(env=base_env, transform=NoopResetEnv(env_cfg.noop)) - from_pixels = env_cfg.from_pixels - if from_pixels: - return make_transformed_env_pixels(base_env, env_cfg) - else: - return make_transformed_env_states(base_env, env_cfg) - - -def make_transformed_env_pixels(base_env, env_cfg): - if not isinstance(env_cfg.reward_scaling, float): - env_cfg.reward_scaling = DEFAULT_REWARD_SCALING.get(env_cfg.env_name, 5.0) - - env = TransformedEnv(base_env) - - reward_scaling = env_cfg.reward_scaling - env.append_transform(RewardScaling(0.0, reward_scaling)) - - env.append_transform(ToTensorImage()) - env.append_transform(GrayScale()) - env.append_transform(Resize(84, 84)) - env.append_transform(CatFrames(N=4, dim=-3)) - env.append_transform(RewardSum()) - env.append_transform(StepCounter()) - - env.append_transform(DoubleToFloat()) - return env - - -def make_transformed_env_states(base_env, env_cfg): - if not isinstance(env_cfg.reward_scaling, float): - env_cfg.reward_scaling = DEFAULT_REWARD_SCALING.get(env_cfg.env_name, 5.0) - - env = TransformedEnv(base_env) - - reward_scaling = env_cfg.reward_scaling - - env.append_transform(RewardScaling(0.0, reward_scaling)) - - # we concatenate all the state vectors - # even if there is a single tensor, it'll be renamed in "observation_vector" - selected_keys = [ - key for key in env.observation_spec.keys(True, True) if key != "pixels" - ] - out_key = "observation_vector" - env.append_transform(CatTensors(in_keys=selected_keys, out_key=out_key)) - env.append_transform(RewardSum()) - env.append_transform(StepCounter()) - # obs_norm = ObservationNorm(in_keys=[out_key]) - # env.append_transform(obs_norm) - - env.append_transform(DoubleToFloat()) - return env - - -def make_parallel_env(env_cfg, state_dict): - num_envs = env_cfg.num_envs - env = make_transformed_env( - ParallelEnv(num_envs, EnvCreator(lambda: make_base_env(env_cfg))), env_cfg - ) - for t in env.transform: - if isinstance(t, ObservationNorm): - t.init_stats(3, cat_dim=1, reduce_dim=[0, 1]) - env.load_state_dict(state_dict, strict=False) - return env - - -def get_stats(env_cfg): - env = make_transformed_env(make_base_env(env_cfg), env_cfg) - return get_norm_state_dict(env) - - -def init_stats(env, n_samples_stats, from_pixels): - for t in env.transform: - if isinstance(t, ObservationNorm): - if from_pixels: - t.init_stats( - n_samples_stats, - cat_dim=-3, - reduce_dim=(-1, -2, -3), - keep_dims=(-1, -2, -3), - ) - else: - t.init_stats(n_samples_stats) - - -def make_test_env(env_cfg): - env_cfg.num_envs = 1 - state_dict = get_stats(env_cfg) - env = make_parallel_env(env_cfg, state_dict=state_dict) - return env - - -# ==================================================================== -# Collector and replay buffer -# --------------------------- - - -def make_collector(cfg, policy): - env_cfg = cfg.env - collector_cfg = cfg.collector - collector_class = SyncDataCollector - state_dict = get_stats(env_cfg) - collector = collector_class( - make_parallel_env(env_cfg, state_dict=state_dict), - policy, - frames_per_batch=collector_cfg.frames_per_batch, - total_frames=collector_cfg.total_frames, - device=collector_cfg.collector_device, - max_frames_per_traj=collector_cfg.max_frames_per_traj, - ) - return collector - - -# ==================================================================== -# Model -# ----- -# -# We give one version of the model for learning from pixels, and one for state. -# TorchRL comes in handy at this point, as the high-level interactions with -# these models is unchanged, regardless of the modality. - - -def make_a2c_models(cfg): - - env_cfg = cfg.env - from_pixels = env_cfg.from_pixels - proof_environment = make_transformed_env(make_base_env(env_cfg), env_cfg) - - if not from_pixels: - # we must initialize the observation norm transform - # init_stats( - # proof_environment, n_samples_stats=3, from_pixels=env_cfg.from_pixels - # ) - common_module, policy_module, value_module = make_a2c_modules_state( - proof_environment - ) - else: - common_module, policy_module, value_module = make_a2c_modules_pixels( - proof_environment - ) - - # Wrap modules in a single ActorCritic operator - if common_module is not None: - actor_critic = ActorValueOperator( - common_operator=common_module, - policy_operator=policy_module, - value_operator=value_module, - ) - actor = actor_critic.get_policy_operator() - critic = actor_critic.get_value_head() # to avoid duplicate params - else: - actor = policy_module - critic = value_module - - with torch.no_grad(): - td = proof_environment.rollout(max_steps=100, break_when_any_done=False) - td = actor(td) - td = critic(td) - del td - - return actor, critic - - -def make_a2c_modules_state(proof_environment): - - # Define input shape - input_shape = proof_environment.observation_spec["observation_vector"].shape - - # Define distribution class and kwargs - continuous_actions = False - if isinstance(proof_environment.action_spec.space, DiscreteBox): - num_outputs = proof_environment.action_spec.space.n - distribution_class = OneHotCategorical - distribution_kwargs = {} - else: # is ContinuousBox - continuous_actions = True - num_outputs = proof_environment.action_spec.shape[-1] * 2 - distribution_class = TanhNormal - distribution_kwargs = { - "min": proof_environment.action_spec.space.low, - "max": proof_environment.action_spec.space.high, - "tanh_loc": False, - } - - # Define input keys - in_keys = ["observation_vector"] - - # Define the policy net - policy_net = MLP( - in_features=input_shape[-1], - out_features=num_outputs, - num_cells=[64, 64], - activate_last_layer=False, - activation_class=torch.nn.Tanh, - ) - if continuous_actions: - policy_net = NormalParamWrapper(policy_net) - - policy_module = TensorDictModule( - module=policy_net, - in_keys=in_keys, - out_keys=["loc", "scale"] if continuous_actions else ["logits"], - ) - - # Add probabilistic sampling of the actions - policy_module = ProbabilisticActor( - policy_module, - in_keys=["loc", "scale"] if continuous_actions else ["logits"], - spec=CompositeSpec(action=proof_environment.action_spec), - safe=True, - distribution_class=distribution_class, - distribution_kwargs=distribution_kwargs, - return_log_prob=True, - default_interaction_type=ExplorationType.RANDOM, - ) - - # Define the value net - value_net = MLP( - in_features=input_shape[-1], - out_features=1, - num_cells=[64, 64], - activate_last_layer=False, - activation_class=torch.nn.Tanh, - ) - value_module = ValueOperator( - value_net, - in_keys=in_keys, - ) - - return None, policy_module, value_module - - -def make_a2c_modules_pixels(proof_environment): - - # Define input shape - input_shape = proof_environment.observation_spec["pixels"].shape - - # Define distribution class and kwargs - if isinstance(proof_environment.action_spec.space, DiscreteBox): - num_outputs = proof_environment.action_spec.space.n - distribution_class = OneHotCategorical - distribution_kwargs = {} - else: # is ContinuousBox - num_outputs = proof_environment.action_spec.shape - distribution_class = TanhNormal - distribution_kwargs = { - "min": proof_environment.action_spec.space.low, - "max": proof_environment.action_spec.space.high, - } - - # Define input keys - in_keys = ["pixels"] - - # Define a shared Module and TensorDictModule (CNN + MLP) - common_cnn = ConvNet( - activation_class=torch.nn.ReLU, - num_cells=[32, 64, 64], - kernel_sizes=[8, 4, 3], - strides=[4, 2, 1], - ) - common_cnn_output = common_cnn(torch.ones(input_shape)) - common_mlp = MLP( - in_features=common_cnn_output.shape[-1], - activation_class=torch.nn.ReLU, - activate_last_layer=True, - out_features=512, - num_cells=[], - ) - common_mlp_output = common_mlp(common_cnn_output) - - # Define shared net as TensorDictModule - common_module = TensorDictModule( - module=torch.nn.Sequential(common_cnn, common_mlp), - in_keys=in_keys, - out_keys=["common_features"], - ) - - # Define on head for the policy - policy_net = MLP( - in_features=common_mlp_output.shape[-1], - out_features=num_outputs, - num_cells=[256], - ) - policy_module = TensorDictModule( - module=policy_net, - in_keys=["common_features"], - out_keys=["logits"], - ) - - # Add probabilistic sampling of the actions - policy_module = ProbabilisticActor( - policy_module, - in_keys=["logits"], - spec=CompositeSpec(action=proof_environment.action_spec), - safe=True, - distribution_class=distribution_class, - distribution_kwargs=distribution_kwargs, - return_log_prob=True, - default_interaction_type=ExplorationType.RANDOM, - ) - - # Define another head for the value - value_net = MLP( - in_features=common_mlp_output.shape[-1], out_features=1, num_cells=[256] - ) - value_module = ValueOperator( - value_net, - in_keys=["common_features"], - ) - - return common_module, policy_module, value_module - - -# ==================================================================== -# A2C Loss -# --------- - - -def make_advantage_module(loss_cfg, value_network): - advantage_module = GAE( - gamma=loss_cfg.gamma, - lmbda=loss_cfg.gae_lamdda, - value_network=value_network, - average_gae=True, - ) - return advantage_module - - -def make_loss(loss_cfg, actor_network, value_network): - advantage_module = make_advantage_module(loss_cfg, value_network) - loss_module = A2CLoss( - actor=actor_network, - critic=value_network, - loss_critic_type=loss_cfg.loss_critic_type, - entropy_coef=loss_cfg.entropy_coef, - critic_coef=loss_cfg.critic_coef, - entropy_bonus=True, - ) - loss_module.make_value_estimator(gamma=loss_cfg.gamma) - return loss_module, advantage_module - - -def make_optim(optim_cfg, actor_network, value_network): - optim = torch.optim.Adam( - list(actor_network.parameters()) + list(value_network.parameters()), - lr=optim_cfg.lr, - weight_decay=optim_cfg.weight_decay, - ) - return optim - - -# ==================================================================== -# Logging and recording -# --------------------- - - -def make_logger(logger_cfg): - exp_name = generate_exp_name("A2C", logger_cfg.exp_name) - logger_cfg.exp_name = exp_name - logger = get_logger(logger_cfg.backend, logger_name="a2c", experiment_name=exp_name) - return logger diff --git a/examples/a2c/utils_atari.py b/examples/a2c/utils_atari.py new file mode 100644 index 00000000000..42b75473b20 --- /dev/null +++ b/examples/a2c/utils_atari.py @@ -0,0 +1,239 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +import gymnasium as gym +import numpy as np +import torch.nn +import torch.optim +from tensordict.nn import TensorDictModule +from torchrl.data import CompositeSpec +from torchrl.data.tensor_specs import DiscreteBox +from torchrl.envs import ( + CatFrames, + default_info_dict_reader, + DoubleToFloat, + EnvCreator, + ExplorationType, + GrayScale, + NoopResetEnv, + ParallelEnv, + Resize, + RewardClipping, + RewardSum, + StepCounter, + ToTensorImage, + TransformedEnv, + VecNorm, +) +from torchrl.envs.libs.gym import GymWrapper +from torchrl.modules import ( + ActorValueOperator, + ConvNet, + MLP, + OneHotCategorical, + ProbabilisticActor, + TanhNormal, + ValueOperator, +) + +# ==================================================================== +# Environment utils +# -------------------------------------------------------------------- + + +class EpisodicLifeEnv(gym.Wrapper): + def __init__(self, env): + """Make end-of-life == end-of-episode, but only reset on true game over. + Done by DeepMind for the DQN and co. It helps value estimation. + """ + gym.Wrapper.__init__(self, env) + self.lives = 0 + + def step(self, action): + obs, rew, done, truncate, info = self.env.step(action) + lives = self.env.unwrapped.ale.lives() + info["end_of_life"] = False + if (lives < self.lives) or done: + info["end_of_life"] = True + self.lives = lives + return obs, rew, done, truncate, info + + def reset(self, **kwargs): + reset_data = self.env.reset(**kwargs) + self.lives = self.env.unwrapped.ale.lives() + return reset_data + + +def make_base_env( + env_name="BreakoutNoFrameskip-v4", frame_skip=4, device="cpu", is_test=False +): + env = gym.make(env_name) + if not is_test: + env = EpisodicLifeEnv(env) + env = GymWrapper( + env, frame_skip=frame_skip, from_pixels=True, pixels_only=False, device=device + ) + env = TransformedEnv(env) + env.append_transform(NoopResetEnv(noops=30, random=True)) + if not is_test: + reader = default_info_dict_reader(["end_of_life"]) + env.set_info_dict_reader(reader) + return env + + +def make_parallel_env(env_name, num_envs, device, is_test=False): + env = ParallelEnv( + num_envs, EnvCreator(lambda: make_base_env(env_name, device=device)) + ) + env = TransformedEnv(env) + env.append_transform(ToTensorImage()) + env.append_transform(GrayScale()) + env.append_transform(Resize(84, 84)) + env.append_transform(CatFrames(N=4, dim=-3)) + env.append_transform(RewardSum()) + env.append_transform(StepCounter(max_steps=4500)) + if not is_test: + env.append_transform(RewardClipping(-1, 1)) + env.append_transform(DoubleToFloat()) + env.append_transform(VecNorm(in_keys=["pixels"])) + return env + + +# ==================================================================== +# Model utils +# -------------------------------------------------------------------- + + +def make_ppo_modules_pixels(proof_environment): + + # Define input shape + input_shape = proof_environment.observation_spec["pixels"].shape + + # Define distribution class and kwargs + if isinstance(proof_environment.action_spec.space, DiscreteBox): + num_outputs = proof_environment.action_spec.space.n + distribution_class = OneHotCategorical + distribution_kwargs = {} + else: # is ContinuousBox + num_outputs = proof_environment.action_spec.shape + distribution_class = TanhNormal + distribution_kwargs = { + "min": proof_environment.action_spec.space.minimum, + "max": proof_environment.action_spec.space.maximum, + } + + # Define input keys + in_keys = ["pixels"] + + # Define a shared Module and TensorDictModule (CNN + MLP) + common_cnn = ConvNet( + activation_class=torch.nn.ReLU, + num_cells=[32, 64, 64], + kernel_sizes=[8, 4, 3], + strides=[4, 2, 1], + ) + common_cnn_output = common_cnn(torch.ones(input_shape)) + common_mlp = MLP( + in_features=common_cnn_output.shape[-1], + activation_class=torch.nn.ReLU, + activate_last_layer=True, + out_features=512, + num_cells=[], + ) + common_mlp_output = common_mlp(common_cnn_output) + + # Define shared net as TensorDictModule + common_module = TensorDictModule( + module=torch.nn.Sequential(common_cnn, common_mlp), + in_keys=in_keys, + out_keys=["common_features"], + ) + + # Define on head for the policy + policy_net = MLP( + in_features=common_mlp_output.shape[-1], + out_features=num_outputs, + activation_class=torch.nn.ReLU, + num_cells=[], + ) + policy_module = TensorDictModule( + module=policy_net, + in_keys=["common_features"], + out_keys=["logits"], + ) + + # Add probabilistic sampling of the actions + policy_module = ProbabilisticActor( + policy_module, + in_keys=["logits"], + spec=CompositeSpec(action=proof_environment.action_spec), + distribution_class=distribution_class, + distribution_kwargs=distribution_kwargs, + return_log_prob=True, + default_interaction_type=ExplorationType.RANDOM, + ) + + # Define another head for the value + value_net = MLP( + activation_class=torch.nn.ReLU, + in_features=common_mlp_output.shape[-1], + out_features=1, + num_cells=[], + ) + value_module = ValueOperator( + value_net, + in_keys=["common_features"], + ) + + return common_module, policy_module, value_module + + +def make_ppo_models(env_name): + + proof_environment = make_parallel_env(env_name, 1, device="cpu") + common_module, policy_module, value_module = make_ppo_modules_pixels( + proof_environment + ) + + # Wrap modules in a single ActorCritic operator + actor_critic = ActorValueOperator( + common_operator=common_module, + policy_operator=policy_module, + value_operator=value_module, + ) + + with torch.no_grad(): + td = proof_environment.rollout(max_steps=100, break_when_any_done=False) + td = actor_critic(td) + del td + + actor = actor_critic.get_policy_operator() + critic = actor_critic.get_value_operator() + critic_head = actor_critic.get_value_head() + + del proof_environment + + return actor, critic, critic_head + + +# ==================================================================== +# Evaluation utils +# -------------------------------------------------------------------- + + +def eval_model(actor, test_env, num_episodes=3): + test_rewards = [] + for _ in range(num_episodes): + td_test = test_env.rollout( + policy=actor, + auto_reset=True, + auto_cast_to_device=True, + break_when_any_done=True, + max_steps=10_000_000, + ) + reward = td_test["next", "episode_reward"][td_test["next", "done"]] + test_rewards = np.append(test_rewards, reward.cpu().numpy()) + del td_test + return test_rewards.mean() diff --git a/examples/a2c/utils_mujoco.py b/examples/a2c/utils_mujoco.py new file mode 100644 index 00000000000..cdc681da522 --- /dev/null +++ b/examples/a2c/utils_mujoco.py @@ -0,0 +1,141 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +import numpy as np +import torch.nn +import torch.optim + +from tensordict.nn import AddStateIndependentNormalScale, TensorDictModule +from torchrl.data import CompositeSpec +from torchrl.envs import ( + ClipTransform, + DoubleToFloat, + ExplorationType, + RewardSum, + StepCounter, + TransformedEnv, + VecNorm, +) +from torchrl.envs.libs.gym import GymEnv +from torchrl.modules import MLP, ProbabilisticActor, TanhNormal, ValueOperator + +# ==================================================================== +# Environment utils +# -------------------------------------------------------------------- + + +def make_env(env_name="HalfCheetah-v4", device="cpu"): + env = GymEnv(env_name, device=device) + env = TransformedEnv(env) + env.append_transform(RewardSum()) + env.append_transform(StepCounter()) + env.append_transform(VecNorm(in_keys=["observation"])) + env.append_transform(ClipTransform(in_keys=["observation"], low=-10, high=10)) + env.append_transform(DoubleToFloat(in_keys=["observation"])) + return env + + +# ==================================================================== +# Model utils +# -------------------------------------------------------------------- + + +def make_ppo_models_state(proof_environment): + + # Define input shape + input_shape = proof_environment.observation_spec["observation"].shape + + # Define policy output distribution class + num_outputs = proof_environment.action_spec.shape[-1] + distribution_class = TanhNormal + distribution_kwargs = { + "min": proof_environment.action_spec.space.minimum, + "max": proof_environment.action_spec.space.maximum, + "tanh_loc": False, + } + + # Define policy architecture + policy_mlp = MLP( + in_features=input_shape[-1], + activation_class=torch.nn.Tanh, + out_features=num_outputs, # predict only loc + num_cells=[64, 64], + ) + + # Initialize policy weights + for layer in policy_mlp.modules(): + if isinstance(layer, torch.nn.Linear): + torch.nn.init.orthogonal_(layer.weight, 1.0) + layer.bias.data.zero_() + + # Add state-independent normal scale + policy_mlp = torch.nn.Sequential( + policy_mlp, + AddStateIndependentNormalScale(proof_environment.action_spec.shape[-1]), + ) + + # Add probabilistic sampling of the actions + policy_module = ProbabilisticActor( + TensorDictModule( + module=policy_mlp, + in_keys=["observation"], + out_keys=["loc", "scale"], + ), + in_keys=["loc", "scale"], + spec=CompositeSpec(action=proof_environment.action_spec), + distribution_class=distribution_class, + distribution_kwargs=distribution_kwargs, + return_log_prob=True, + default_interaction_type=ExplorationType.RANDOM, + ) + + # Define value architecture + value_mlp = MLP( + in_features=input_shape[-1], + activation_class=torch.nn.Tanh, + out_features=1, + num_cells=[64, 64], + ) + + # Initialize value weights + for layer in value_mlp.modules(): + if isinstance(layer, torch.nn.Linear): + torch.nn.init.orthogonal_(layer.weight, 0.01) + layer.bias.data.zero_() + + # Define value module + value_module = ValueOperator( + value_mlp, + in_keys=["observation"], + ) + + return policy_module, value_module + + +def make_ppo_models(env_name): + proof_environment = make_env(env_name, device="cpu") + actor, critic = make_ppo_models_state(proof_environment) + return actor, critic + + +# ==================================================================== +# Evaluation utils +# -------------------------------------------------------------------- + + +def eval_model(actor, test_env, num_episodes=3): + test_rewards = [] + for _ in range(num_episodes): + td_test = test_env.rollout( + policy=actor, + auto_reset=True, + auto_cast_to_device=True, + break_when_any_done=True, + max_steps=10_000_000, + ) + reward = td_test["next", "episode_reward"][td_test["next", "done"]] + test_rewards = np.append(test_rewards, reward.cpu().numpy()) + del td_test + return test_rewards.mean() From 76903a1a1e4ceae51e205cb386d33b1545299aa6 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 22 Sep 2023 09:50:11 +0100 Subject: [PATCH 108/148] [CI] Add ninja for MacOS builts (#1564) --- .github/unittest/linux/scripts/environment.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/unittest/linux/scripts/environment.yml b/.github/unittest/linux/scripts/environment.yml index ed33f11b27f..7125cfff04b 100644 --- a/.github/unittest/linux/scripts/environment.yml +++ b/.github/unittest/linux/scripts/environment.yml @@ -29,3 +29,4 @@ dependencies: - coverage - ray - transformers + - ninja From bf6db3bd41a2d19aff5de7651fba07c10d2abb2b Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 22 Sep 2023 11:40:56 +0100 Subject: [PATCH 109/148] [Feature] Threaded collection and parallel envs (#1559) Co-authored-by: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> --- test/_utils_internal.py | 9 +++++++++ test/test_collector.py | 31 +++++++++++++++++++++++++++++++ test/test_env.py | 24 ++++++++++++++++++++++++ torchrl/_utils.py | 13 ++++++++----- torchrl/collectors/collectors.py | 21 ++++++++++++++++++++- torchrl/data/utils.py | 3 +-- torchrl/envs/batched_envs.py | 18 ++++++++++++++++++ 7 files changed, 111 insertions(+), 8 deletions(-) diff --git a/test/_utils_internal.py b/test/_utils_internal.py index a8e31556ac5..d398aa92dac 100644 --- a/test/_utils_internal.py +++ b/test/_utils_internal.py @@ -19,6 +19,7 @@ from tensordict import tensorclass, TensorDict from torchrl._utils import implement_for, seed_generator +from torchrl.data.utils import CloudpickleWrapper from torchrl.envs import MultiThreadedEnv, ObservationNorm from torchrl.envs.batched_envs import ParallelEnv, SerialEnv @@ -433,3 +434,11 @@ def check_rollout_consistency_multikey_env(td: TensorDict, max_steps: int): == td["nested_2", "observation"][~action_is_count] ).all() assert (td["next", "nested_2", "reward"][~action_is_count] == 0).all() + + +def decorate_thread_sub_func(func, num_threads): + def new_func(*args, **kwargs): + assert torch.get_num_threads() == num_threads + return func(*args, **kwargs) + + return CloudpickleWrapper(new_func) diff --git a/test/test_collector.py b/test/test_collector.py index 051cc4d819c..414f9b468bf 100644 --- a/test/test_collector.py +++ b/test/test_collector.py @@ -4,6 +4,7 @@ # LICENSE file in the root directory of this source tree. import argparse + import sys import numpy as np @@ -11,6 +12,7 @@ import torch from _utils_internal import ( check_rollout_consistency_multikey_env, + decorate_thread_sub_func, generate_seeds, PENDULUM_VERSIONED, PONG_VERSIONED, @@ -1783,6 +1785,35 @@ def make_env(): collector.shutdown() +def test_num_threads(): + from torchrl.collectors import collectors + + _main_async_collector_saved = collectors._main_async_collector + collectors._main_async_collector = decorate_thread_sub_func( + collectors._main_async_collector, num_threads=3 + ) + num_threads = torch.get_num_threads() + try: + env = ContinuousActionVecMockEnv() + c = MultiSyncDataCollector( + [env], + policy=RandomPolicy(env.action_spec), + num_threads=7, + num_sub_threads=3, + total_frames=200, + frames_per_batch=200, + ) + assert torch.get_num_threads() == 7 + for _ in c: + pass + c.shutdown() + del c + finally: + # reset vals + collectors._main_async_collector = _main_async_collector_saved + torch.set_num_threads(num_threads) + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/test/test_env.py b/test/test_env.py index 5d4ccf01567..ec795761a16 100644 --- a/test/test_env.py +++ b/test/test_env.py @@ -18,6 +18,7 @@ _make_envs, CARTPOLE_VERSIONED, check_rollout_consistency_multikey_env, + decorate_thread_sub_func, get_default_devices, HALFCHEETAH_VERSIONED, PENDULUM_VERSIONED, @@ -2088,6 +2089,29 @@ def test_mocking_envs(envclass): check_env_specs(env, seed=100, return_contiguous=False) +def test_num_threads(): + from torchrl.envs import batched_envs + + _run_worker_pipe_shared_mem_save = batched_envs._run_worker_pipe_shared_mem + batched_envs._run_worker_pipe_shared_mem = decorate_thread_sub_func( + batched_envs._run_worker_pipe_shared_mem, num_threads=3 + ) + num_threads = torch.get_num_threads() + try: + env = ParallelEnv( + 2, ContinuousActionVecMockEnv, num_sub_threads=3, num_threads=7 + ) + # We could test that the number of threads isn't changed until we start the procs. + # Even though it's unlikely that we have 7 threads, we still disable this for safety + # assert torch.get_num_threads() != 7 + env.rollout(3) + assert torch.get_num_threads() == 7 + finally: + # reset vals + batched_envs._run_worker_pipe_shared_mem = _run_worker_pipe_shared_mem_save + torch.set_num_threads(num_threads) + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/torchrl/_utils.py b/torchrl/_utils.py index 01413ba262a..42fecf26871 100644 --- a/torchrl/_utils.py +++ b/torchrl/_utils.py @@ -2,6 +2,7 @@ # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. +from __future__ import annotations import collections @@ -534,21 +535,23 @@ def get_trace(): class _ProcessNoWarn(mp.Process): - """A private Process class that shuts down warnings on the subprocess.""" + """A private Process class that shuts down warnings on the subprocess and controls the number of threads in the subprocess.""" @wraps(mp.Process.__init__) - def __init__(self, *args, **kwargs): + def __init__(self, *args, num_threads=None, **kwargs): import torchrl - if torchrl.filter_warnings_subprocess: - self.filter_warnings_subprocess = torchrl.filter_warnings_subprocess + self.filter_warnings_subprocess = torchrl.filter_warnings_subprocess + self.num_threads = num_threads super().__init__(*args, **kwargs) def run(self, *args, **kwargs): + if self.num_threads is not None: + torch.set_num_threads(self.num_threads) if self.filter_warnings_subprocess: import warnings with warnings.catch_warnings(): warnings.simplefilter("ignore") - return mp.Process.run(self, *args, **kwargs) + return mp.Process.run(self, *args, **kwargs) return mp.Process.run(self, *args, **kwargs) diff --git a/torchrl/collectors/collectors.py b/torchrl/collectors/collectors.py index 2e6ff5f62e5..5057d42119b 100644 --- a/torchrl/collectors/collectors.py +++ b/torchrl/collectors/collectors.py @@ -1098,6 +1098,14 @@ class _MultiDataCollector(DataCollectorBase): Defaults to ``False``. preemptive_threshold (float, optional): a value between 0.0 and 1.0 that specifies the ratio of workers that will be allowed to finished collecting their rollout before the rest are forced to end early. + num_threads (int, optional): number of threads for this process. + Defaults to the number of workers. + num_sub_threads (int, optional): number of threads of the subprocesses. + Should be equal to one plus the number of processes launched within + each subprocess (or one if a single process is launched). + Defaults to 1 for safety: if none is indicated, launching multiple + workers may charge the cpu load too much and harm performance. + """ def __init__( @@ -1127,11 +1135,17 @@ def __init__( update_at_each_batch: bool = False, devices=None, storing_devices=None, + num_threads: int = None, + num_sub_threads: int = 1, ): exploration_type = _convert_exploration_type( exploration_mode=exploration_mode, exploration_type=exploration_type ) self.closed = True + if num_threads is None: + num_threads = len(create_env_fn) + 1 # 1 more thread for this proc + self.num_sub_threads = num_sub_threads + self.num_threads = num_threads self.create_env_fn = create_env_fn self.num_workers = len(create_env_fn) self.create_env_kwargs = ( @@ -1308,6 +1322,7 @@ def _queue_len(self) -> int: raise NotImplementedError def _run_processes(self) -> None: + torch.set_num_threads(self.num_threads) queue_out = mp.Queue(self._queue_len) # sends data from proc to main self.procs = [] self.pipes = [] @@ -1339,7 +1354,11 @@ def _run_processes(self) -> None: "idx": i, "interruptor": self.interruptor, } - proc = _ProcessNoWarn(target=_main_async_collector, kwargs=kwargs) + proc = _ProcessNoWarn( + target=_main_async_collector, + num_threads=self.num_sub_threads, + kwargs=kwargs, + ) # proc.daemon can't be set as daemonic processes may be launched by the process itself try: proc.start() diff --git a/torchrl/data/utils.py b/torchrl/data/utils.py index 5c2dd863848..47c80587a03 100644 --- a/torchrl/data/utils.py +++ b/torchrl/data/utils.py @@ -261,9 +261,8 @@ def __setstate__(self, ob: bytes): self.fn, self.kwargs = pickle.loads(ob) def __call__(self, *args, **kwargs) -> Any: - kwargs = {k: item for k, item in kwargs.items()} kwargs.update(self.kwargs) - return self.fn(**kwargs) + return self.fn(*args, **kwargs) def _process_action_space_spec(action_space, spec): diff --git a/torchrl/envs/batched_envs.py b/torchrl/envs/batched_envs.py index edc50ef80c3..5502253bd83 100644 --- a/torchrl/envs/batched_envs.py +++ b/torchrl/envs/batched_envs.py @@ -121,6 +121,15 @@ class _BatchedEnv(EnvBase): It is assumed that all environments will run on the same device as a common shared tensordict will be used to pass data from process to process. The device can be changed after instantiation using :obj:`env.to(device)`. + num_threads (int, optional): number of threads for this process. + Defaults to the number of workers. + This parameter has no effect for the :class:`~SerialEnv` class. + num_sub_threads (int, optional): number of threads of the subprocesses. + Should be equal to one plus the number of processes launched within + each subprocess (or one if a single process is launched). + Defaults to 1 for safety: if none is indicated, launching multiple + workers may charge the cpu load too much and harm performance. + This parameter has no effect for the :class:`~SerialEnv` class. """ @@ -144,6 +153,8 @@ def __init__( policy_proof: Optional[Callable] = None, device: Optional[DEVICE_TYPING] = None, allow_step_when_done: bool = False, + num_threads: int = None, + num_sub_threads: int = 1, ): if device is not None: raise ValueError( @@ -154,6 +165,10 @@ def __init__( super().__init__(device=None) self.is_closed = True + if num_threads is None: + num_threads = num_workers + 1 # 1 more thread for this proc + self.num_sub_threads = num_sub_threads + self.num_threads = num_threads self._cache_in_keys = None self._single_task = callable(create_env_fn) or (len(set(create_env_fn)) == 1) @@ -692,6 +707,8 @@ class ParallelEnv(_BatchedEnv): def _start_workers(self) -> None: from torchrl.envs.env_creator import EnvCreator + torch.set_num_threads(self.num_threads) + ctx = mp.get_context("spawn") _num_workers = self.num_workers @@ -717,6 +734,7 @@ def _start_workers(self) -> None: process = _ProcessNoWarn( target=_run_worker_pipe_shared_mem, + num_threads=self.num_sub_threads, args=( parent_pipe, child_pipe, From 6d442a6d7f173ad206b34d5aa1724877e9fd8197 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Fri, 22 Sep 2023 11:49:38 +0100 Subject: [PATCH 110/148] [BugFix] DDPG select also critic input for actor loss (#1563) Signed-off-by: Matteo Bettini --- torchrl/objectives/ddpg.py | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/torchrl/objectives/ddpg.py b/torchrl/objectives/ddpg.py index de83b023662..d67db859713 100644 --- a/torchrl/objectives/ddpg.py +++ b/torchrl/objectives/ddpg.py @@ -11,10 +11,10 @@ from typing import Tuple import torch - from tensordict.nn import dispatch, make_functional, repopulate_module, TensorDictModule from tensordict.tensordict import TensorDict, TensorDictBase -from tensordict.utils import NestedKey + +from tensordict.utils import NestedKey, unravel_key from torchrl.modules.tensordict_module.actors import ActorCriticWrapper from torchrl.objectives.common import LossModule from torchrl.objectives.utils import ( @@ -216,6 +216,9 @@ def __init__( self.actor_critic.module[1] = self.value_network self.actor_in_keys = actor_network.in_keys + self.value_exclusive_keys = set(self.value_network.in_keys) - ( + set(self.actor_in_keys) | set(self.actor_network.out_keys) + ) self.loss_function = loss_function @@ -233,14 +236,15 @@ def _forward_value_estimator_keys(self, **kwargs) -> None: self._set_in_keys() def _set_in_keys(self): - keys = [ - ("next", self.tensor_keys.reward), - ("next", self.tensor_keys.done), + in_keys = { + unravel_key(("next", self.tensor_keys.reward)), + unravel_key(("next", self.tensor_keys.done)), *self.actor_in_keys, - *[("next", key) for key in self.actor_in_keys], + *[unravel_key(("next", key)) for key in self.actor_in_keys], *self.value_network.in_keys, - ] - self._in_keys = list(set(keys)) + *[unravel_key(("next", key)) for key in self.value_network.in_keys], + } + self._in_keys = sorted(in_keys, key=str) @property def in_keys(self): @@ -293,7 +297,9 @@ def _loss_actor( self, tensordict: TensorDictBase, ) -> torch.Tensor: - td_copy = tensordict.select(*self.actor_in_keys).detach() + td_copy = tensordict.select( + *self.actor_in_keys, *self.value_exclusive_keys + ).detach() td_copy = self.actor_network( td_copy, params=self.actor_network_params, From 0d8d48635a9019db5dd6d168d0e44f0cc4d5f14d Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 22 Sep 2023 12:08:22 +0100 Subject: [PATCH 111/148] [CI] Fix jumanji (#1566) --- .../scripts_jumanji/environment.yml | 2 - test/test_libs.py | 49 +++++++++++-------- 2 files changed, 29 insertions(+), 22 deletions(-) diff --git a/.github/unittest/linux_libs/scripts_jumanji/environment.yml b/.github/unittest/linux_libs/scripts_jumanji/environment.yml index 12714559a43..fa16f027ee0 100644 --- a/.github/unittest/linux_libs/scripts_jumanji/environment.yml +++ b/.github/unittest/linux_libs/scripts_jumanji/environment.yml @@ -18,5 +18,3 @@ dependencies: - scipy - hydra-core - jumanji - - jax<=0.4.10 - - jaxlib<=0.4.10 diff --git a/test/test_libs.py b/test/test_libs.py index b23708c0924..9c6dacd7701 100644 --- a/test/test_libs.py +++ b/test/test_libs.py @@ -1986,28 +1986,37 @@ class TestRoboHive: # In the CI, robohive should not coexist with other libs so that's fine. # Locally these imports can be annoying, especially given the amount of # stuff printed by robohive. - @pytest.mark.parametrize("envname", RoboHiveEnv.available_envs) @pytest.mark.parametrize("from_pixels", [True, False]) @set_gym_backend("gym") - def test_robohive(self, envname, from_pixels): - if any(substr in envname for substr in ("_vr3m", "_vrrl", "_vflat", "_vvc1s")): - print("not testing envs with prebuilt rendering") - return - if "Adroit" in envname: - print("tcdm are broken") - return - try: - env = RoboHiveEnv(envname) - except AttributeError as err: - if "'MjData' object has no attribute 'get_body_xipos'" in str(err): - print("tcdm are broken") - return - else: - raise err - if from_pixels and len(RoboHiveEnv.get_available_cams(env_name=envname)) == 0: - print("no camera") - return - check_env_specs(env) + def test_robohive(self, from_pixels): + for envname in RoboHiveEnv.available_envs: + try: + if any( + substr in envname + for substr in ("_vr3m", "_vrrl", "_vflat", "_vvc1s") + ): + print("not testing envs with prebuilt rendering") + return + if "Adroit" in envname: + print("tcdm are broken") + return + try: + env = RoboHiveEnv(envname) + except AttributeError as err: + if "'MjData' object has no attribute 'get_body_xipos'" in str(err): + print("tcdm are broken") + return + else: + raise err + if ( + from_pixels + and len(RoboHiveEnv.get_available_cams(env_name=envname)) == 0 + ): + print("no camera") + return + check_env_specs(env) + except Exception as err: + raise RuntimeError(f"Test with robohive end {envname} failed.") from err @pytest.mark.skipif(not _has_smacv2, reason="SMACv2 not found") From 610328b54de2d9d2ee815b1ae3814d3b878769b7 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Sun, 24 Sep 2023 11:08:49 +0100 Subject: [PATCH 112/148] [Test] Skip threading tests in OSX (#1571) --- test/test_collector.py | 26 ++++++++++++-------------- test/test_env.py | 5 +++++ 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/test/test_collector.py b/test/test_collector.py index 414f9b468bf..2bb69e1f217 100644 --- a/test/test_collector.py +++ b/test/test_collector.py @@ -61,10 +61,10 @@ from torchrl.modules import Actor, LSTMNet, OrnsteinUhlenbeckProcessWrapper, SafeModule # torch.set_default_dtype(torch.double) -_os_is_windows = sys.platform == "win32" -_python_is_3_10 = sys.version_info.major == 3 and sys.version_info.minor == 10 -_python_is_3_7 = sys.version_info.major == 3 and sys.version_info.minor == 7 -_os_is_osx = sys.platform == "darwin" +IS_WINDOWS = sys.platform == "win32" +IS_OSX = sys.platform == "darwin" +PYTHON_3_10 = sys.version_info.major == 3 and sys.version_info.minor == 10 +PYTHON_3_7 = sys.version_info.major == 3 and sys.version_info.minor == 7 class WrappablePolicy(nn.Module): @@ -172,7 +172,7 @@ def _is_consistent_device_type( @pytest.mark.skipif( - _os_is_windows and _python_is_3_10, + IS_WINDOWS and PYTHON_3_10, reason="Windows Access Violation in torch.multiprocessing / BrokenPipeError in multiprocessing.connection", ) @pytest.mark.parametrize("num_env", [2]) @@ -187,7 +187,7 @@ def test_output_device_consistency( ) and not torch.cuda.is_available(): pytest.skip("cuda is not available") - if _os_is_windows and _python_is_3_7: + if IS_WINDOWS and PYTHON_3_7: if device == "cuda" and policy_device == "cuda" and device is None: pytest.skip( "BrokenPipeError in multiprocessing.connection with Python 3.7 on Windows" @@ -509,7 +509,7 @@ def test_collector_batch_size( num_env, env_name, seed=100, num_workers=2, frames_per_batch=20 ): """Tests that there are 'frames_per_batch' frames in each batch of a collection.""" - if num_env == 3 and _os_is_windows: + if num_env == 3 and IS_WINDOWS: pytest.skip("Test timeout (> 10 min) on CI pipeline Windows machine with GPU") if num_env == 1: @@ -1053,12 +1053,7 @@ def test_collector_output_keys( @pytest.mark.parametrize("storing_device", ["cuda", "cpu"]) @pytest.mark.skipif(not torch.cuda.is_available(), reason="no cuda device found") def test_collector_device_combinations(device, storing_device): - if ( - _os_is_windows - and _python_is_3_10 - and storing_device == "cuda" - and device == "cuda" - ): + if IS_WINDOWS and PYTHON_3_10 and storing_device == "cuda" and device == "cuda": pytest.skip("Windows fatal exception: access violation in torch.storage") def env_fn(seed): @@ -1274,7 +1269,7 @@ def weight_reset(m): m.reset_parameters() -@pytest.mark.skipif(_os_is_osx, reason="Queue.qsize does not work on osx.") +@pytest.mark.skipif(IS_OSX, reason="Queue.qsize does not work on osx.") class TestPreemptiveThreshold: @pytest.mark.parametrize("env_name", ["conv", "vec"]) def test_sync_collector_interruptor_mechanism(self, env_name, seed=100): @@ -1785,6 +1780,9 @@ def make_env(): collector.shutdown() +@pytest.mark.skipif( + IS_OSX, reason="setting different threads across workeres can randomly fail on OSX." +) def test_num_threads(): from torchrl.collectors import collectors diff --git a/test/test_env.py b/test/test_env.py index ec795761a16..931f60767a8 100644 --- a/test/test_env.py +++ b/test/test_env.py @@ -8,6 +8,7 @@ import re from collections import defaultdict from functools import partial +from sys import platform import numpy as np import pytest @@ -91,6 +92,7 @@ _atari_found = False atari_confs = defaultdict(lambda: "") +IS_OSX = platform == "darwin" ## TO BE FIXED: DiscreteActionProjection queries a randint on each worker, which leads to divergent results between ## the serial and parallel batched envs @@ -2089,6 +2091,9 @@ def test_mocking_envs(envclass): check_env_specs(env, seed=100, return_contiguous=False) +@pytest.mark.skipif( + IS_OSX, reason="setting different threads across workeres can randomly fail on OSX." +) def test_num_threads(): from torchrl.envs import batched_envs From f5b886eb0c0ed258074d568367de15aafaf2d336 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Sun, 24 Sep 2023 11:15:52 +0100 Subject: [PATCH 113/148] [BugFix] Fix run_type_checks (#1570) --- test/test_env.py | 23 +++++++++++++++++++++++ torchrl/envs/common.py | 9 ++++----- 2 files changed, 27 insertions(+), 5 deletions(-) diff --git a/test/test_env.py b/test/test_env.py index 931f60767a8..4143ec8e9d2 100644 --- a/test/test_env.py +++ b/test/test_env.py @@ -2117,6 +2117,29 @@ def test_num_threads(): torch.set_num_threads(num_threads) +def test_run_type_checks(): + env = ContinuousActionVecMockEnv() + env._run_type_checks = False + check_env_specs(env) + env._run_type_checks = True + check_env_specs(env) + env.output_spec.unlock_() + # check type check on done + env.output_spec["full_done_spec", "done"].dtype = torch.int + with pytest.raises(TypeError, match="expected done.dtype to"): + check_env_specs(env) + env.output_spec["full_done_spec", "done"].dtype = torch.bool + # check type check on reward + env.output_spec["full_reward_spec", "reward"].dtype = torch.int + with pytest.raises(TypeError, match="expected"): + check_env_specs(env) + env.output_spec["full_reward_spec", "reward"].dtype = torch.float + # check type check on obs + env.output_spec["full_observation_spec", "observation"].dtype = torch.float16 + with pytest.raises(TypeError): + check_env_specs(env) + + if __name__ == "__main__": args, unknown = argparse.ArgumentParser().parse_known_args() pytest.main([__file__, "--capture", "no", "--exitfirst"] + unknown) diff --git a/torchrl/envs/common.py b/torchrl/envs/common.py index 771c529933c..4b24ea5e056 100644 --- a/torchrl/envs/common.py +++ b/torchrl/envs/common.py @@ -1193,10 +1193,9 @@ def _step_proc_data(self, next_tensordict_out): next_tensordict_out.set(done_key, done) if self.run_type_checks: - # TODO: check these errors - for key in self._select_observation_keys(next_tensordict_out): + for key, spec in self.observation_spec.items(): obs = next_tensordict_out.get(key) - self.observation_spec.type_check(obs, key) + spec.type_check(obs) for reward_key in self.reward_keys: if ( @@ -1213,10 +1212,10 @@ def _step_proc_data(self, next_tensordict_out): for done_key in self.done_keys: if ( next_tensordict_out.get(done_key).dtype - is not self.output_spec["full_done_spec"].get(done_key).dtype + is not self.output_spec["full_done_spec", done_key].dtype ): raise TypeError( - f"expected done.dtype to be torch.bool but got {next_tensordict_out.get(done_key).dtype}" + f"expected done.dtype to be {self.output_spec['full_done_spec', done_key].dtype} but got {next_tensordict_out.get(done_key).dtype}" ) return next_tensordict_out From d115036fc8d81285f4e6ea2162364cf4b9b0d4d3 Mon Sep 17 00:00:00 2001 From: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> Date: Sun, 24 Sep 2023 20:45:21 +0100 Subject: [PATCH 114/148] [Tests] DDPG extra critic input tests (#1568) Signed-off-by: Matteo Bettini --- test/test_cost.py | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/test/test_cost.py b/test/test_cost.py index 6b940331f7e..f7333f4a0ba 100644 --- a/test/test_cost.py +++ b/test/test_cost.py @@ -1206,20 +1206,20 @@ def _create_mock_actor(self, batch=2, obs_dim=3, action_dim=4, device="cpu"): return actor.to(device) def _create_mock_value( - self, batch=2, obs_dim=3, action_dim=4, device="cpu", out_keys=None + self, batch=2, obs_dim=3, action_dim=4, state_dim=8, device="cpu", out_keys=None ): # Actor class ValueClass(nn.Module): def __init__(self): super().__init__() - self.linear = nn.Linear(obs_dim + action_dim, 1) + self.linear = nn.Linear(obs_dim + action_dim + state_dim, 1) - def forward(self, obs, act): - return self.linear(torch.cat([obs, act], -1)) + def forward(self, obs, state, act): + return self.linear(torch.cat([obs, state, act], -1)) module = ValueClass() value = ValueOperator( - module=module, in_keys=["observation", "action"], out_keys=out_keys + module=module, in_keys=["observation", "state", "action"], out_keys=out_keys ) return value.to(device) @@ -1278,6 +1278,7 @@ def _create_mock_data_ddpg( batch=8, obs_dim=3, action_dim=4, + state_dim=8, atoms=None, device="cpu", reward_key="reward", @@ -1291,13 +1292,16 @@ def _create_mock_data_ddpg( else: action = torch.randn(batch, action_dim, device=device).clamp(-1, 1) reward = torch.randn(batch, 1, device=device) + state = torch.randn(batch, state_dim, device=device) done = torch.zeros(batch, 1, dtype=torch.bool, device=device) td = TensorDict( batch_size=(batch,), source={ "observation": obs, + "state": state, "next": { "observation": next_obs, + "state": state, done_key: done, reward_key: reward, }, @@ -1313,6 +1317,7 @@ def _create_seq_mock_data_ddpg( T=4, obs_dim=3, action_dim=4, + state_dim=8, atoms=None, device="cpu", reward_key="reward", @@ -1320,8 +1325,11 @@ def _create_seq_mock_data_ddpg( ): # create a tensordict total_obs = torch.randn(batch, T + 1, obs_dim, device=device) + total_state = torch.randn(batch, T + 1, state_dim, device=device) obs = total_obs[:, :T] next_obs = total_obs[:, 1:] + state = total_state[:, :T] + next_state = total_state[:, 1:] if atoms: action = torch.randn(batch, T, atoms, action_dim, device=device).clamp( -1, 1 @@ -1329,14 +1337,17 @@ def _create_seq_mock_data_ddpg( else: action = torch.randn(batch, T, action_dim, device=device).clamp(-1, 1) reward = torch.randn(batch, T, 1, device=device) + done = torch.zeros(batch, T, 1, dtype=torch.bool, device=device) mask = ~torch.zeros(batch, T, dtype=torch.bool, device=device) td = TensorDict( batch_size=(batch, T), source={ "observation": obs.masked_fill_(~mask.unsqueeze(-1), 0.0), + "state": state.masked_fill_(~mask.unsqueeze(-1), 0.0), "next": { "observation": next_obs.masked_fill_(~mask.unsqueeze(-1), 0.0), + "state": next_state.masked_fill_(~mask.unsqueeze(-1), 0.0), done_key: done, reward_key: reward.masked_fill_(~mask.unsqueeze(-1), 0.0), }, @@ -1715,6 +1726,8 @@ def test_ddpg_notensordict(self): "next_done": td.get(("next", "done")), "next_observation": td.get(("next", "observation")), "action": td.get("action"), + "state": td.get("state"), + "next_state": td.get(("next", "state")), } td = TensorDict(kwargs, td.batch_size).unflatten_keys("_") From 3d424b9a6bf115deaaf9e339fc6c925c1abac1bd Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 27 Sep 2023 13:40:39 +0100 Subject: [PATCH 115/148] [Minor] Remove ya gymnasium deprecation warning in vectorized envs (#1573) --- torchrl/envs/libs/gym.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/torchrl/envs/libs/gym.py b/torchrl/envs/libs/gym.py index 597579a09cd..db66072c598 100644 --- a/torchrl/envs/libs/gym.py +++ b/torchrl/envs/libs/gym.py @@ -465,6 +465,7 @@ def _is_batched(self): self._env, tuple_of_classes + (gym_backend("vector").VectorEnv,) ) + @implement_for("gym", None, "0.27") def _get_batch_size(self, env): if hasattr(env, "num_envs"): batch_size = torch.Size([env.num_envs, *self.batch_size]) @@ -472,6 +473,14 @@ def _get_batch_size(self, env): batch_size = self.batch_size return batch_size + @implement_for("gymnasium", "0.27", None) # gymnasium wants the unwrapped env + def _get_batch_size(self, env): # noqa: F811 + if hasattr(env, "num_envs"): + batch_size = torch.Size([env.unwrapped.num_envs, *self.batch_size]) + else: + batch_size = self.batch_size + return batch_size + def _check_kwargs(self, kwargs: Dict): if "env" not in kwargs: raise TypeError("Could not find environment key 'env' in kwargs.") From 2d5720e8cc664c269238c1e69b8b9cf504eb7b53 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 27 Sep 2023 17:03:50 +0100 Subject: [PATCH 116/148] [Versioning] Write version all cases in setup.py (#1579) --- setup.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index 3018f25912a..20f63bb3064 100644 --- a/setup.py +++ b/setup.py @@ -174,10 +174,11 @@ def _main(argv): if is_nightly: version = get_nightly_version() write_version_file(version) - print("Building wheel {}-{}".format(package_name, version)) - print(f"BUILD_VERSION is {os.getenv('BUILD_VERSION')}") else: version = get_version() + write_version_file(version) + print("Building wheel {}-{}".format(package_name, version)) + print(f"BUILD_VERSION is {os.getenv('BUILD_VERSION')}") pytorch_package_dep = _get_pytorch_version(is_nightly) print("-- PyTorch dependency:", pytorch_package_dep) From 0c29fcb0e5f7acef317a8ee67867a82e8067e8f1 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Wed, 27 Sep 2023 20:44:19 +0100 Subject: [PATCH 117/148] [Versioning] Use python 3.8 for GPU tests (#1577) --- .github/workflows/test-linux-gpu.yml | 4 ++-- .github/workflows/test-linux-stable-gpu.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-linux-gpu.yml b/.github/workflows/test-linux-gpu.yml index 355271ad078..594e6c3c096 100644 --- a/.github/workflows/test-linux-gpu.yml +++ b/.github/workflows/test-linux-gpu.yml @@ -22,8 +22,8 @@ jobs: tests: strategy: matrix: - python_version: ["3.9"] # "3.8", "3.9", "3.10", "3.11" - cuda_arch_version: ["12.1"] # "11.6", "11.7" + python_version: ["3.8"] + cuda_arch_version: ["12.1"] fail-fast: false uses: pytorch/test-infra/.github/workflows/linux_job.yml@main with: diff --git a/.github/workflows/test-linux-stable-gpu.yml b/.github/workflows/test-linux-stable-gpu.yml index e779f4bd71f..0325940df20 100644 --- a/.github/workflows/test-linux-stable-gpu.yml +++ b/.github/workflows/test-linux-stable-gpu.yml @@ -22,7 +22,7 @@ jobs: tests: strategy: matrix: - python_version: ["3.9"] # "3.8", "3.9", "3.10", "3.11" + python_version: ["3.8"] # "3.8", "3.9", "3.10", "3.11" cuda_arch_version: ["11.8"] # "11.6", "11.7" fail-fast: false uses: pytorch/test-infra/.github/workflows/linux_job.yml@main From f405d765702c46c31381b9350541137ee3461115 Mon Sep 17 00:00:00 2001 From: Vincent Moens Date: Fri, 29 Sep 2023 16:55:35 +0100 Subject: [PATCH 118/148] [Feature] Gym compatibility: Terminal and truncated (#1539) Co-authored-by: Skander Moalla <37197319+skandermoalla@users.noreply.github.com> Co-authored-by: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> --- .github/unittest/linux/scripts/run_all.sh | 6 +- .../linux_examples/scripts/run_local.sh | 3 +- .../linux_examples/scripts/run_test.sh | 10 +- .../linux_libs/scripts_gym/batch_scripts.sh | 3 + docs/source/reference/envs.rst | 35 +- examples/a2c/a2c_atari.py | 4 - examples/decision_transformer/utils.py | 2 +- examples/ppo/ppo_atari.py | 44 +- examples/ppo/ppo_mujoco.py | 38 +- examples/ppo/utils_atari.py | 63 +- examples/ppo/utils_mujoco.py | 9 +- test/_utils_internal.py | 20 + test/assets/generate.py | 2 +- test/assets/openai_summarize_comparisons.zip | Bin 690495 -> 37683 bytes test/assets/openai_summarize_tldr.zip | Bin 15618006 -> 96580 bytes test/mocking_classes.py | 134 ++- test/test_actors.py | 5 +- test/test_collector.py | 284 ++++- test/test_distributed.py | 47 +- test/test_env.py | 247 ++-- test/test_exploration.py | 10 +- test/test_helpers.py | 7 + test/test_libs.py | 358 +++++- test/test_rlhf.py | 3 +- test/test_transforms.py | 446 ++++--- test/test_utils.py | 97 +- torchrl/_utils.py | 93 +- torchrl/collectors/collectors.py | 59 +- torchrl/collectors/utils.py | 4 - torchrl/data/datasets/d4rl.py | 94 +- torchrl/data/rlhf/utils.py | 6 +- torchrl/data/tensor_specs.py | 3 + torchrl/data/utils.py | 16 - torchrl/envs/__init__.py | 2 + torchrl/envs/batched_envs.py | 86 +- torchrl/envs/common.py | 561 ++++++--- torchrl/envs/gym_like.py | 157 ++- torchrl/envs/libs/__init__.py | 9 +- torchrl/envs/libs/brax.py | 3 + torchrl/envs/libs/dm_control.py | 30 +- torchrl/envs/libs/envpool.py | 31 +- torchrl/envs/libs/gym.py | 269 ++++- torchrl/envs/libs/isaacgym.py | 39 +- torchrl/envs/libs/jumanji.py | 14 +- torchrl/envs/libs/pettingzoo.py | 40 +- torchrl/envs/libs/robohive.py | 29 +- torchrl/envs/libs/smacv2.py | 25 +- torchrl/envs/libs/vmas.py | 89 +- torchrl/envs/model_based/common.py | 17 +- torchrl/envs/transforms/transforms.py | 1032 +++++++++++++---- torchrl/envs/transforms/vip.py | 16 +- torchrl/envs/utils.py | 185 ++- tutorials/sphinx-tutorials/torchrl_envs.py | 15 +- 53 files changed, 3583 insertions(+), 1218 deletions(-) diff --git a/.github/unittest/linux/scripts/run_all.sh b/.github/unittest/linux/scripts/run_all.sh index 06da0c3b2f0..35bb2b21764 100755 --- a/.github/unittest/linux/scripts/run_all.sh +++ b/.github/unittest/linux/scripts/run_all.sh @@ -178,16 +178,16 @@ python -m torch.utils.collect_env #export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$lib_dir export MKL_THREADING_LAYER=GNU export CKPT_BACKEND=torch - +export MAX_IDLE_COUNT=100 pytest test/smoke_test.py -v --durations 200 pytest test/smoke_test_deps.py -v --durations 200 -k 'test_gym or test_dm_control_pixels or test_dm_control or test_tb' if [ "${CU_VERSION:-}" != cpu ] ; then python .github/unittest/helpers/coverage_run_parallel.py -m pytest test \ - --instafail --durations 200 --ignore test/test_rlhf.py + --instafail --durations 200 -vv --capture no --ignore test/test_rlhf.py else python .github/unittest/helpers/coverage_run_parallel.py -m pytest test \ - --instafail --durations 200 --ignore test/test_rlhf.py --ignore test/test_distributed.py + --instafail --durations 200 -vv --capture no --ignore test/test_rlhf.py --ignore test/test_distributed.py fi coverage combine diff --git a/.github/unittest/linux_examples/scripts/run_local.sh b/.github/unittest/linux_examples/scripts/run_local.sh index afeda5f54eb..75bc84e4ca8 100755 --- a/.github/unittest/linux_examples/scripts/run_local.sh +++ b/.github/unittest/linux_examples/scripts/run_local.sh @@ -1,6 +1,7 @@ #!/bin/bash set -e +set -v # Read script from line 29 filename=".github/unittest/linux_examples/scripts/run_test.sh" @@ -12,7 +13,7 @@ script="set -e"$'\n'"$script" script="${script//cuda:0/cpu}" # Remove any instances of ".github/unittest/helpers/coverage_run_parallel.py" -script="${script//.circleci\/unittest\/helpers\/coverage_run_parallel.py}" +script="${script//.github\/unittest\/helpers\/coverage_run_parallel.py}" script="${script//coverage combine}" script="${script//coverage xml -i}" diff --git a/.github/unittest/linux_examples/scripts/run_test.sh b/.github/unittest/linux_examples/scripts/run_test.sh index 5794c21673d..de002389a41 100755 --- a/.github/unittest/linux_examples/scripts/run_test.sh +++ b/.github/unittest/linux_examples/scripts/run_test.sh @@ -53,16 +53,16 @@ python .github/unittest/helpers/coverage_run_parallel.py examples/ppo/ppo_mujoco collector.total_frames=40 \ collector.frames_per_batch=20 \ loss.mini_batch_size=10 \ - loss.ppo_epochs=1 \ + loss.ppo_epochs=2 \ logger.backend= \ - logger.test_interval=40 + logger.test_interval=10 python .github/unittest/helpers/coverage_run_parallel.py examples/ppo/ppo_atari.py \ collector.total_frames=80 \ collector.frames_per_batch=20 \ loss.mini_batch_size=20 \ - loss.ppo_epochs=1 \ + loss.ppo_epochs=2 \ logger.backend= \ - logger.test_interval=40 + logger.test_interval=10 python .github/unittest/helpers/coverage_run_parallel.py examples/ddpg/ddpg.py \ collector.total_frames=48 \ collector.init_random_frames=10 \ @@ -126,6 +126,7 @@ python .github/unittest/helpers/coverage_run_parallel.py examples/sac/sac.py \ optimization.utd_ratio=1 \ replay_buffer.size=120 \ env.name=Pendulum-v1 \ + network.device=cuda:0 \ logger.backend= # logger.record_video=True \ # logger.record_frames=4 \ @@ -225,6 +226,7 @@ python .github/unittest/helpers/coverage_run_parallel.py examples/sac/sac.py \ collector.num_workers=2 \ collector.env_per_collector=1 \ collector.collector_device=cuda:0 \ + network.device=cuda:0 \ optimization.batch_size=10 \ optimization.utd_ratio=1 \ replay_buffer.size=120 \ diff --git a/.github/unittest/linux_libs/scripts_gym/batch_scripts.sh b/.github/unittest/linux_libs/scripts_gym/batch_scripts.sh index 3fadedb0ffd..321da982d2e 100755 --- a/.github/unittest/linux_libs/scripts_gym/batch_scripts.sh +++ b/.github/unittest/linux_libs/scripts_gym/batch_scripts.sh @@ -50,6 +50,8 @@ do conda activate ./cloned_env echo "Testing gym version: ${GYM_VERSION}" + # handling https://github.com/openai/gym/issues/3202 + pip3 install wheel==0.38.4 pip3 install gym==$GYM_VERSION $DIR/run_test.sh @@ -67,6 +69,7 @@ do conda activate ./cloned_env echo "Testing gym version: ${GYM_VERSION}" + pip3 install wheel==0.38.4 pip3 install 'gym[atari]'==$GYM_VERSION pip3 install ale-py==0.7 $DIR/run_test.sh diff --git a/docs/source/reference/envs.rst b/docs/source/reference/envs.rst index c49e12fc2b0..351678bf6b7 100644 --- a/docs/source/reference/envs.rst +++ b/docs/source/reference/envs.rst @@ -36,7 +36,7 @@ Each env will have the following attributes: - :obj:`env.reward_spec`: a :class:`~torchrl.data.TensorSpec` object representing the reward spec. - :obj:`env.done_spec`: a :class:`~torchrl.data.TensorSpec` object representing - the done-flag spec. + the done-flag spec. See the section on trajectory termination below. - :obj:`env.input_spec`: a :class:`~torchrl.data.CompositeSpec` object containing all the input keys (:obj:`"full_action_spec"` and :obj:`"full_state_spec"`). It is locked and should not be modified directly. @@ -79,22 +79,25 @@ The following figure summarizes how a rollout is executed in torchrl. In brief, a TensorDict is created by the :meth:`~.EnvBase.reset` method, then populated with an action by the policy before being passed to the -:meth:`~.EnvBase.step` method which writes the observations, done flag and +:meth:`~.EnvBase.step` method which writes the observations, done flag(s) and reward under the ``"next"`` entry. The result of this call is stored for delivery and the ``"next"`` entry is gathered by the :func:`~.utils.step_mdp` function. .. note:: - - The Gym(nasium) API recently shifted to a splitting of the ``"done"`` state - into a ``terminated`` (the env is done and results should not be trusted) - and ``truncated`` (the maximum number of steps is reached) flags. - In TorchRL, ``"done"`` usually refers to ``"terminated"``. Truncation is - achieved via the :class:`~.StepCounter` transform class, and the output - key will be ``"truncated"`` if not chosen to be something else (e.g. - ``StepCounter(max_steps=100, truncated_key="done")``). - TorchRL's collectors and rollout methods will be looking for one of these - keys when assessing if the env should be reset. + In general, all TorchRL environment have a ``"done"`` and ``"terminated"`` + entry in their output tensordict. If they are not present by design, + the :class:`~.EnvBase` metaclass will ensure that every done or terminated + is flanked with its dual. + In TorchRL, ``"done"`` strictly refers to the union of all the end-of-trajectory + signals and should be interpreted as "the last step of a trajectory" or + equivalently "a signal indicating the need to reset". + If the environment provides it (eg, Gymnasium), the truncation entry is also + written in the :meth:`EnvBase.step` output under a ``"truncated"`` entry. + If the environment carries a single value, it will interpreted as a ``"terminated"`` + signal by default. + By default, TorchRL's collectors and rollout methods will be looking for the ``"done"`` + entry to assess if the environment should be reset. .. note:: @@ -172,12 +175,13 @@ It is also possible to reset some but not all of the environments: :caption: Parallel environment reset >>> tensordict = TensorDict({"_reset": [[True], [False], [True], [True]]}, [4]) - >>> env.reset(tensordict) + >>> env.reset(tensordict) # eliminates the "_reset" entry TensorDict( fields={ + terminated: Tensor(torch.Size([4, 1]), dtype=torch.bool), done: Tensor(torch.Size([4, 1]), dtype=torch.bool), pixels: Tensor(torch.Size([4, 500, 500, 3]), dtype=torch.uint8), - _reset: Tensor(torch.Size([4, 1]), dtype=torch.bool)}, + truncated: Tensor(torch.Size([4, 1]), dtype=torch.bool), batch_size=torch.Size([4]), device=None, is_shared=True) @@ -238,7 +242,7 @@ Some of the main differences between these paradigms include: - **observation** can be per-agent and also have some shared components - **reward** can be per-agent or shared -- **done** can be per-agent or shared +- **done** (and ``"truncated"`` or ``"terminated"``) can be per-agent or shared. TorchRL accommodates all these possible paradigms thanks to its :class:`tensordict.TensorDict` data carrier. In particular, in multi-agent environments, per-agent keys will be carried in a nested "agents" TensorDict. @@ -586,6 +590,7 @@ Helpers exploration_type check_env_specs make_composite_from_td + terminated_or_truncated Domain-specific --------------- diff --git a/examples/a2c/a2c_atari.py b/examples/a2c/a2c_atari.py index 88deea2e217..d3393e4308e 100644 --- a/examples/a2c/a2c_atari.py +++ b/examples/a2c/a2c_atari.py @@ -124,10 +124,6 @@ def main(cfg: "DictConfig"): # noqa: F821 } ) - # Apply episodic end of life - data["done"].copy_(data["end_of_life"]) - data["next", "done"].copy_(data["next", "end_of_life"]) - losses = TensorDict({}, batch_size=[num_mini_batches]) training_start = time.time() diff --git a/examples/decision_transformer/utils.py b/examples/decision_transformer/utils.py index 768237178c9..824f4038cca 100644 --- a/examples/decision_transformer/utils.py +++ b/examples/decision_transformer/utils.py @@ -232,7 +232,7 @@ def make_offline_replay_buffer(rb_cfg, reward_scaling): batch_size=rb_cfg.batch_size, sampler=RandomSampler(), # SamplerWithoutReplacement(drop_last=False), transform=transforms, - use_timeout_as_done=True, + use_truncated_as_done=True, ) full_data = data._get_dataset_from_env(rb_cfg.dataset, {}) loc = full_data["observation"].mean(axis=0).float() diff --git a/examples/ppo/ppo_atari.py b/examples/ppo/ppo_atari.py index 351d0af0ae8..2bb7cc6a3e8 100644 --- a/examples/ppo/ppo_atari.py +++ b/examples/ppo/ppo_atari.py @@ -78,6 +78,9 @@ def main(cfg: "DictConfig"): # noqa: F821 normalize_advantage=True, ) + # use end-of-life as done key + loss_module.set_keys(done="eol") + # Create optimizer optim = torch.optim.Adam( loss_module.parameters(), @@ -109,6 +112,18 @@ def main(cfg: "DictConfig"): # noqa: F821 ) sampling_start = time.time() + + # extract cfg variables + cfg_loss_ppo_epochs = cfg.loss.ppo_epochs + cfg_optim_anneal_lr = cfg.optim.anneal_lr + cfg_optim_lr = cfg.optim.lr + cfg_loss_anneal_clip_eps = cfg.loss.anneal_clip_epsilon + cfg_loss_clip_epsilon = cfg.loss.clip_epsilon + cfg_logger_num_test_episodes = cfg.logger.num_test_episodes + cfg_optim_max_grad_norm = cfg.optim.max_grad_norm + cfg.loss.clip_epsilon = cfg_loss_clip_epsilon + losses = TensorDict({}, batch_size=[cfg_loss_ppo_epochs, num_mini_batches]) + for i, data in enumerate(collector): log_info = {} @@ -120,7 +135,7 @@ def main(cfg: "DictConfig"): # noqa: F821 # Get training rewards and episode lengths episode_rewards = data["next", "episode_reward"][data["next", "done"]] if len(episode_rewards) > 0: - episode_length = data["next", "step_count"][data["next", "done"]] + episode_length = data["next", "step_count"][data["next", "stop"]] log_info.update( { "train/reward": episode_rewards.mean().item(), @@ -129,13 +144,8 @@ def main(cfg: "DictConfig"): # noqa: F821 } ) - # Apply episodic end of life - data["done"].copy_(data["end_of_life"]) - data["next", "done"].copy_(data["next", "end_of_life"]) - - losses = TensorDict({}, batch_size=[cfg.loss.ppo_epochs, num_mini_batches]) training_start = time.time() - for j in range(cfg.loss.ppo_epochs): + for j in range(cfg_loss_ppo_epochs): # Compute GAE with torch.no_grad(): @@ -149,12 +159,12 @@ def main(cfg: "DictConfig"): # noqa: F821 # Linearly decrease the learning rate and clip epsilon alpha = 1.0 - if cfg.optim.anneal_lr: + if cfg_optim_anneal_lr: alpha = 1 - (num_network_updates / total_network_updates) for group in optim.param_groups: - group["lr"] = cfg.optim.lr * alpha - if cfg.loss.anneal_clip_epsilon: - loss_module.clip_epsilon.copy_(cfg.loss.clip_epsilon * alpha) + group["lr"] = cfg_optim_lr * alpha + if cfg_loss_anneal_clip_eps: + loss_module.clip_epsilon.copy_(cfg_loss_clip_epsilon * alpha) num_network_updates += 1 # Get a data batch @@ -172,7 +182,7 @@ def main(cfg: "DictConfig"): # noqa: F821 # Backward pass loss_sum.backward() torch.nn.utils.clip_grad_norm_( - list(loss_module.parameters()), max_norm=cfg.optim.max_grad_norm + list(loss_module.parameters()), max_norm=cfg_optim_max_grad_norm ) # Update the networks @@ -181,15 +191,15 @@ def main(cfg: "DictConfig"): # noqa: F821 # Get training losses and times training_time = time.time() - training_start - losses = losses.apply(lambda x: x.float().mean(), batch_size=[]) - for key, value in losses.items(): + losses_mean = losses.apply(lambda x: x.float().mean(), batch_size=[]) + for key, value in losses_mean.items(): log_info.update({f"train/{key}": value.item()}) log_info.update( { - "train/lr": alpha * cfg.optim.lr, + "train/lr": alpha * cfg_optim_lr, "train/sampling_time": sampling_time, "train/training_time": training_time, - "train/clip_epsilon": alpha * cfg.loss.clip_epsilon, + "train/clip_epsilon": alpha * cfg_loss_clip_epsilon, } ) @@ -201,7 +211,7 @@ def main(cfg: "DictConfig"): # noqa: F821 actor.eval() eval_start = time.time() test_rewards = eval_model( - actor, test_env, num_episodes=cfg.logger.num_test_episodes + actor, test_env, num_episodes=cfg_logger_num_test_episodes ) eval_time = time.time() - eval_start log_info.update( diff --git a/examples/ppo/ppo_mujoco.py b/examples/ppo/ppo_mujoco.py index f081d8e69ee..37230fb33c6 100644 --- a/examples/ppo/ppo_mujoco.py +++ b/examples/ppo/ppo_mujoco.py @@ -100,6 +100,17 @@ def main(cfg: "DictConfig"): # noqa: F821 pbar = tqdm.tqdm(total=cfg.collector.total_frames) sampling_start = time.time() + + # extract cfg variables + cfg_loss_ppo_epochs = cfg.loss.ppo_epochs + cfg_optim_anneal_lr = cfg.optim.anneal_lr + cfg_optim_lr = cfg.optim.lr + cfg_loss_anneal_clip_eps = cfg.loss.anneal_clip_epsilon + cfg_loss_clip_epsilon = cfg.loss.clip_epsilon + cfg_logger_test_interval = cfg.logger.test_interval + cfg_logger_num_test_episodes = cfg.logger.num_test_episodes + losses = TensorDict({}, batch_size=[cfg_loss_ppo_epochs, num_mini_batches]) + for i, data in enumerate(collector): log_info = {} @@ -120,9 +131,8 @@ def main(cfg: "DictConfig"): # noqa: F821 } ) - losses = TensorDict({}, batch_size=[cfg.loss.ppo_epochs, num_mini_batches]) training_start = time.time() - for j in range(cfg.loss.ppo_epochs): + for j in range(cfg_loss_ppo_epochs): # Compute GAE with torch.no_grad(): @@ -136,14 +146,14 @@ def main(cfg: "DictConfig"): # noqa: F821 # Linearly decrease the learning rate and clip epsilon alpha = 1.0 - if cfg.optim.anneal_lr: + if cfg_optim_anneal_lr: alpha = 1 - (num_network_updates / total_network_updates) for group in actor_optim.param_groups: - group["lr"] = cfg.optim.lr * alpha + group["lr"] = cfg_optim_lr * alpha for group in critic_optim.param_groups: - group["lr"] = cfg.optim.lr * alpha - if cfg.loss.anneal_clip_epsilon: - loss_module.clip_epsilon.copy_(cfg.loss.clip_epsilon * alpha) + group["lr"] = cfg_optim_lr * alpha + if cfg_loss_anneal_clip_eps: + loss_module.clip_epsilon.copy_(cfg_loss_clip_epsilon * alpha) num_network_updates += 1 # Forward pass PPO loss @@ -166,27 +176,27 @@ def main(cfg: "DictConfig"): # noqa: F821 # Get training losses and times training_time = time.time() - training_start - losses = losses.apply(lambda x: x.float().mean(), batch_size=[]) - for key, value in losses.items(): + losses_mean = losses.apply(lambda x: x.float().mean(), batch_size=[]) + for key, value in losses_mean.items(): log_info.update({f"train/{key}": value.item()}) log_info.update( { - "train/lr": alpha * cfg.optim.lr, + "train/lr": alpha * cfg_optim_lr, "train/sampling_time": sampling_time, "train/training_time": training_time, - "train/clip_epsilon": alpha * cfg.loss.clip_epsilon, + "train/clip_epsilon": alpha * cfg_loss_clip_epsilon, } ) # Get test rewards with torch.no_grad(), set_exploration_type(ExplorationType.MODE): - if ((i - 1) * frames_in_batch) // cfg.logger.test_interval < ( + if ((i - 1) * frames_in_batch) // cfg_logger_test_interval < ( i * frames_in_batch - ) // cfg.logger.test_interval: + ) // cfg_logger_test_interval: actor.eval() eval_start = time.time() test_rewards = eval_model( - actor, test_env, num_episodes=cfg.logger.num_test_episodes + actor, test_env, num_episodes=cfg_logger_num_test_episodes ) eval_time = time.time() - eval_start log_info.update( diff --git a/examples/ppo/utils_atari.py b/examples/ppo/utils_atari.py index 54d920e27b1..ddb69555c19 100644 --- a/examples/ppo/utils_atari.py +++ b/examples/ppo/utils_atari.py @@ -4,12 +4,11 @@ # LICENSE file in the root directory of this source tree. import gymnasium as gym -import numpy as np import torch.nn import torch.optim from tensordict.nn import TensorDictModule from torchrl.data import CompositeSpec -from torchrl.data.tensor_specs import DiscreteBox +from torchrl.data.tensor_specs import DiscreteBox, UnboundedDiscreteTensorSpec from torchrl.envs import ( CatFrames, default_info_dict_reader, @@ -24,6 +23,7 @@ RewardSum, StepCounter, ToTensorImage, + Transform, TransformedEnv, VecNorm, ) @@ -43,39 +43,46 @@ # -------------------------------------------------------------------- -class EpisodicLifeEnv(gym.Wrapper): - def __init__(self, env): - """Make end-of-life == end-of-episode, but only reset on true game over. - Done by DeepMind for the DQN and co. It helps value estimation. - """ - gym.Wrapper.__init__(self, env) - self.lives = 0 +class EndOfLifeTransform(Transform): + """Registers the end-of-life signal from a Gym env with a `lives` method. - def step(self, action): - obs, rew, done, truncated, info = self.env.step(action) - lives = self.env.unwrapped.ale.lives() - info["end_of_life"] = False - if (lives < self.lives) or done: - info["end_of_life"] = True - self.lives = lives - return obs, rew, done, truncated, info + Done by DeepMind for the DQN and co. It helps value estimation. + """ - def reset(self, **kwargs): - reset_data = self.env.reset(**kwargs) - self.lives = self.env.unwrapped.ale.lives() - return reset_data + def _step(self, tensordict, next_tensordict): + lives = self.parent.base_env._env.unwrapped.ale.lives() + end_of_life = torch.tensor( + [tensordict["lives"] < lives], device=self.parent.device + ) + end_of_life = end_of_life | next_tensordict.get("done") + next_tensordict.set("eol", end_of_life) + next_tensordict.set("lives", lives) + return next_tensordict + + def reset(self, tensordict): + lives = self.parent.base_env._env.unwrapped.ale.lives() + end_of_life = False + tensordict.set("eol", [end_of_life]) + tensordict.set("lives", lives) + return tensordict + + def transform_observation_spec(self, observation_spec): + full_done_spec = self.parent.output_spec["full_done_spec"] + observation_spec["eol"] = full_done_spec["done"].clone() + observation_spec["lives"] = UnboundedDiscreteTensorSpec( + self.parent.batch_size, device=self.parent.device + ) + return observation_spec def make_base_env( env_name="BreakoutNoFrameskip-v4", frame_skip=4, device="cpu", is_test=False ): env = gym.make(env_name) - if not is_test: - env = EpisodicLifeEnv(env) env = GymWrapper( env, frame_skip=frame_skip, from_pixels=True, pixels_only=False, device=device ) - env = TransformedEnv(env) + env = TransformedEnv(env, EndOfLifeTransform()) env.append_transform(NoopResetEnv(noops=30, random=True)) if not is_test: reader = default_info_dict_reader(["end_of_life"]) @@ -120,8 +127,8 @@ def make_ppo_modules_pixels(proof_environment): num_outputs = proof_environment.action_spec.shape distribution_class = TanhNormal distribution_kwargs = { - "min": proof_environment.action_spec.space.minimum, - "max": proof_environment.action_spec.space.maximum, + "min": proof_environment.action_spec.space.low, + "max": proof_environment.action_spec.space.high, } # Define input keys @@ -233,6 +240,6 @@ def eval_model(actor, test_env, num_episodes=3): max_steps=10_000_000, ) reward = td_test["next", "episode_reward"][td_test["next", "done"]] - test_rewards = np.append(test_rewards, reward.cpu().numpy()) + test_rewards.append(reward.cpu()) del td_test - return test_rewards.mean() + return torch.cat(test_rewards, 0).mean() diff --git a/examples/ppo/utils_mujoco.py b/examples/ppo/utils_mujoco.py index cdc681da522..8fa2a53fd92 100644 --- a/examples/ppo/utils_mujoco.py +++ b/examples/ppo/utils_mujoco.py @@ -3,7 +3,6 @@ # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. -import numpy as np import torch.nn import torch.optim @@ -51,8 +50,8 @@ def make_ppo_models_state(proof_environment): num_outputs = proof_environment.action_spec.shape[-1] distribution_class = TanhNormal distribution_kwargs = { - "min": proof_environment.action_spec.space.minimum, - "max": proof_environment.action_spec.space.maximum, + "min": proof_environment.action_spec.space.low, + "max": proof_environment.action_spec.space.high, "tanh_loc": False, } @@ -136,6 +135,6 @@ def eval_model(actor, test_env, num_episodes=3): max_steps=10_000_000, ) reward = td_test["next", "episode_reward"][td_test["next", "done"]] - test_rewards = np.append(test_rewards, reward.cpu().numpy()) + test_rewards.append(reward.cpu()) del td_test - return test_rewards.mean() + return torch.cat(test_rewards, 0).mean() diff --git a/test/_utils_internal.py b/test/_utils_internal.py index d398aa92dac..00758268593 100644 --- a/test/_utils_internal.py +++ b/test/_utils_internal.py @@ -350,6 +350,26 @@ def rollout_consistency_assertion( ).all(), (r_done[observation_key] - r_done_tp1[observation_key]).norm(dim=-1) +def rand_reset(env): + """Generates a tensordict with reset keys that mimic the done spec. + + Values are drawn at random until at least one reset is present. + + """ + full_done_spec = env.full_done_spec + result = {} + for reset_key, list_of_done in zip(env.reset_keys, env.done_keys_groups): + val = full_done_spec[list_of_done[0]].rand() + while not val.any(): + val = full_done_spec[list_of_done[0]].rand() + result[reset_key] = val + # create a data structure that keeps the batch size of the nested specs + result = ( + full_done_spec.zero().update(result).exclude(*full_done_spec.keys(True, True)) + ) + return result + + def check_rollout_consistency_multikey_env(td: TensorDict, max_steps: int): index_batch_size = (0,) * (len(td.batch_size) - 1) diff --git a/test/assets/generate.py b/test/assets/generate.py index 3e565bb6b69..75a87bb71b5 100644 --- a/test/assets/generate.py +++ b/test/assets/generate.py @@ -21,7 +21,7 @@ def generate_small_dataset(comparison=True): smalld = {} for key in list(d.keys()): if any(key.startswith(sub) for sub in ("train", "valid", "test")): - smalld[key] = Dataset.from_dict(d[key][:1000]) + smalld[key] = Dataset.from_dict(d[key][:50]) smalld = DatasetDict(smalld) if comparison: diff --git a/test/assets/openai_summarize_comparisons.zip b/test/assets/openai_summarize_comparisons.zip index 535a8849ec188b813a2ff55403a7793aa236e315..e48ba2a35abc765dd6da0cecbff235fb6ad59a7f 100644 GIT binary patch literal 37683 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

I@uj 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%0DT;&qmSw^R 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

SD(=G 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 z%0A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

*2)VpyzR+XWIRE`ib^k{djaxAv;NX01w@ubn= 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

v52Ln; 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

-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�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

gvRFRn^rJwmsM6l~S2X6H8 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 FBmAWq#$jNEm?oyN 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

qA0E@4j7(ZiDF1+%#Ix+1i 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

CJ^@TCQMWiHwaBp6KrH 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


snQ|MOc@r-NnNSW`#Lz1B$W2m4k&Gj$la(u79M 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

q8!9X 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

-4`T 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

DRe5qi2CoqrP2U8|D$8!l zR+-KVcJ+aE>dl_IP1#=VNeI^C4L3|dD7^!6p^W+_>#)WrLhVQ3*rDWX1!;HktE2I9 z5e;l(EUC<0i^irN2exl6+_y=GS3U_ZL?&yFYMRh!QeB8pT@+)9AS4eQzN^n6U2tBvG_hB8PEM{8L-Pv5=0yruArMODCkOT2&WEdX_bMc^gN>iok>j(5t0-K+oAlkXFCFpPe{8*DAyvr%`+p zH^}yGY(0+Hnd6t9@X9=WQ5xn>u0tHFXVDt3;d!`N`XP>Xz_{zdt% zQ$5V%6WyjEukUBk5g~t&W8B5cedBv%H|6g-L?UCgtg9Hmd6#fZj>hlyu*#?!@J7GL zj+DYH=CP{nej3G`^|Ds@#y0bC&mG=BvU7qt8^VcE7mkiLY%80}VzbE>fJ4~5$w;$r zIXpdrlNs#}$bF0zAsH+Kz0b|Nqd)kmY2j3W?-vaS-$b&BgJU!7AW1tJZj_U1<-SC5 zuS0;U^{i~$l4y`oS!5&~!~;!t;yI@FfeZ^%HtJohnJ$`H=iR5#X|B7`+%`FIE9H+c zLv2AOmo~Hy%d@`%rtAGcSbh5V^!3kDakG0use&o7h%l{HFkC=Nrj;FapFVo!-e-gM zN%5Vw3U5UB1ER!(Uxa0|rL!tH>PBEP(z!%GHnNp^^*8*}T2LMLNWU>`8UEf?at-{- z6rWaTFyNKqMjdETw=VIlX#{f|bR@=tlj5UjHNa})*ZjQ>n+g*BV2)NE!oNzWAjQOd zBlrOl&?U)9ob)H?9~G=1=cH*4vrNcdRe#oABuqYDM(^nui>2#1_7Ng>{dZhYcD0V- za7PN-7$u5#?tD-ZAy!?=G0crEtK1=mrvR{s_@ZdL8ABUDUb8gmlXD+Ur42p%uG$cC z5d(~?5Ck3HZ2b)IRzX6v<~TpC*{6VLL^tSPJwguDc=p2m1m1B5C)Sdlwg42cAZK^LrlV$lt@ z(99GjK(OBtE!q?@;;QFvLIc-d{ecA}P@FEhwK{v>U_ecj|s=~_D*Dd;wX2V5V;OZX|Dqa8$&)w5tm_oW=S zq$PFSpmi&m1OZ~VwKO%pKube8DbmEW{c#ifN=B4X4czD~lSmhAmF%A*cf$mUZU{gxz_Gp1EC&!6oFR~E?I1ij>Q>u)?uRsZ%JVn9$qL^*A=g1?mF=C z9^v#-xRAoZ8YW5oG+AV}LAJ*(x>w)d2F96WLD zC`PYCa2DPHU7Ut0CJ`<^U10VfLl~>{o(l*)y&p)@0UgR~QJa`6;-w0z3ReeO(ooX1 zJTbEc>Z@|)o~3=~foMPvPRv?5J^gIZE(zUerxCQzfv+Sk>N+r}Kp?6&!z}{Gq?+_j z{-9i3_EbvN&cLp4`kFycxQNEZcgR?RC0lNWtvaJjP;(stb8Zxu>S!=9&3w+AyNEXR zEHrW3Dp&{@Y1qRh@`!x|w1BEsem2%9yMzi zHHj*{>kzn_6DWP)Z;Y{VT zjyB~0^~?%_tvY;kIqgKu$!Aitt|SEIUzA^b0aY_|Y;JB)uy%0i8U*Bh&^hqf`BaGP zW@WPX+2Nf#2(Xe;w07=>h5esRpECTKmQW$K-q(`u)C13hCMy}Ynyf+E#|}`aMZz88 zmPm~b+kQj|-sfolR~+*2Gf#-gi!H3MBV{yFzvcee&OI|~zm9)Efr!Ft5Big%waj1( z7}i)SjB72lY4Ư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%0Due;4mDJ4KL#rhk} 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

$B_v&Q=V~sB~bqJbyir`rW;-U#ouj0BGLlE&} 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%0A#Rp(LAeytAeL?{T_!^!<}bZ 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

r=baTb&if3ao?Cuod!djickK) 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

Mw6<^MD~ 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 Qaab{Bb0Gizy9o75EI*yu1i* z>z{N}eFM0qd#%w3-kTY--VoEB{!+!mzhACa%LXrxA*AwtPg4ba;EqG5O_hC)hFrw* z?LKOqQ%s8w!#`&V^SN<+Kj%-g^TXBQ#*@5-R~wy(1!~a*xgnEsK*~Klw^8ZFHC|G% zb6B6z5p?IXneS_zaA|p9agchr&-b7a$)SH$vD%Qcy;enYEyv<|^iRZND`dBCoC@Ln zbX*FTGWPT7O?Sk7zFu)tG3=c!b-?eh0lkP|@;&SqGmGBDe7bfpha5S~w_YF9Hw~N$ zTg~%0f6BD4@QZLIY`jP~xV?7dN#hApR3^{6EiX_-hx|=7M*BMxYD)k1i2+b8N>q>2 zI#!>(&!gkI+i|5xZG#)hsivR8A+%0D=5YqT<3Fl9yhz#NTrVtAj^MdQAinOv++OEN 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

ut-odb6o%W*Em$=P`jOAvn9P z0g2iju+k$CQwf7DZW0Z-*WSLpC!kvGTTcY#6A4b#Axe2z!>ZOc5deDl1HN?%WGDp z3mNsXDQ4}^_y~iEqhHz#Gp4iFoOC_gj>FE;P`4LvW@$9R#;36N^zsZXx^P;axdem`{_{KE8>weCUc%nX z#k3R8nlZLib!r3Ar$M}w_`9d&<6lK6d8C$54_+`^Hl38LX0>aoSFR9&*F#r4E!W96 zr+4nWO1l7dhE98cU7lM3r7?Ztmb^O-D>rOZtc*ZYZa3aLS!lD!>Z@E$^+;D$QXFej z1+f*x{4*MbVd#ZdQTkENtS(GZNupn@usB<{Hx^I0ZDiL{aHriC_1nKlTz;tvlV>wl zt#v6Y07@k6lkJOtFB4N|A{K-Fd&VG^nfpJ#Jj({!q2x=c|nJ|I<`J2AxWc(ts36$ z%Z%@PvntG8+?^vc|0O%=>J4ZOroVX!Lt$=(<3DJFaVd5{#^9slwusg=e0)`<$IUhC zf;&%b4PgJMmfy7>s&)Fp-&XZD-(jh@!5^wMAXA7fj^eJS$aC=^zK;0B*chQC2*M@& zk^Sjbd-V$}n;~d>tnp!fkcDJE2C%`-hhkG(jF?Lbr^ssqMfguui;oBZT9A{h%Tcnf ztsE|!YGZOnhtBw(CRk&2SI*%6Pn8n>L=N-k+AG)@lSR#85;f+Ap`KNM07}+P5xxJW zkV!OD&b-AThJhd-dT@mv&P-frTFTV6J8^i@YXE_F{2ja~|CoL~wI`~#c9PJ3T5UD+;mnf*vVkRyfjyp*-mFx zEge%MTkfQi?WsS}dqA1g2n(R$_5)*7+BEirk#v7-Me(H3C-hVqw_gr~7N+ zia^x+Doxa<%C8pnECaYS{U3i#$5rzoHrdP|Min2tc=#TP*RyIH6tC|zGrq%1{Dwta zt9H46ZAD>zpylgK4C`6K?V~O8kJpoDl@ZFB)3^i?GK)GK{gBEf~f~vVf@B5(IBY48H30(V3}+ zqOyR7hde?Q$P1rx>h~tJ>fA)Wf#{(ZFaOrOvF$~k8D@)@Hu2(Sqdwlh{q51ihu(%O zZ}Q@c^m9mLQ2fml+>jrKIcQ$j1qey$-ns?am>qL##^;KQyMD9;WepOGy}Yq|Y=&d?N4w$6J9lh-t&9q)m-o*GDMeFF zUf1c1hH|+Wf_3tAla@CI?)wTBpRe{q+CzYkEI-VN>1Gz6T$GB?ENz%Mg@k#tKPUd` z=zI7_r)rS~@rc5PX=d8k;4`3ezqF&`8?;lbM#J-Pq1xtx^B?LyKx}CJ+Oi1IqUb*0 zq~$bl7rZJA8&rVQm8`hhMa<(@>rEByR6)Xxvq3czNT-;_hgVv6M?b*M&2pE<$d_R8 z5rJ^e=t7p3UhabwLD(i&gWMGelhQ1SqOL%0qa7rYSl;$aC^RY2OYf9{c`w7>!)Vlu z2a=WStSsn`C@McuRn#mGw8cnd2Ula+5F)enVlT(DQ)^hw*HvS%PL)XkGf5A2=35Lt zgj%U?Cqs(Lb0VGWW=sCpbepIbvuxHICXfVf0>cQ5998Pt6gB$!|E8fk0nXaS*r*I^ z;hU@udK2hF`K&3yUTd2_SjS|!pIc+EUzK3R4PYRw-CXatZ23FPen(oQyHTkp0@0%; zSA~S%CJ)$o`)0yn&S0T3e3LgUmI@pbMT-@^zm{q)jS!F#@F_pwGk7WcmugGjuKDEo zKmRiw2G4@Agux5goWbE+s_3eqnkMkI;8VTf08}g5?+|sE^lHBR(;x2t`0~3)Upx#) zlqS6~;JpU(L)tZqteRoyRfq!5`gXk^>S%KF5T#0@(o8F%FIrXYbAzvxc_<`&t#OO{ z*oi+~$?U5(-P;&Y0$feyhuzc#&8FQHq78Wgop`$n5&x>)fjeb1^;!k*vW!ZqObAL7 zqoZ_&XBfPPRq`;#=)DDc9CMVF`}Y`q!#X#>dPM2ppP6qL@>-5j^I{FLs}|}mYO9@! zhEPH~ZJheSyry95B(%AAHFCILI6oFgZ?@c{sFuIJwP|-MNm5*}Yj3b(fA#<@n;96@ zh3Gl!RK#R1>Dy7UG$_DwpLYF_>=?O~N~?uPvf%EUfFnl?*mRS>T$_f_XjV*3kfJT# zv*rfHGMGrrfhFtVtX>@F>$NF1qK2WF_cTV6CZ~TwS~=e8XtHL&Q0CCcO^9DWUyFTM z{L6Ts;IE=in_dWSESg=HmTum-h7c7}Y!jrE>|ibokjBQbawuey1>?e2aq;ls*Hhb+ zGS>0Ea27^(MVsbhK`R6`QK~d7dQppfApqGKt2p5oj%aj|j$nKB^XHN?=?g2crSRe5R zMuxnsw%2Qihj{h%o~F}1R2__KVobCiJzW9Xw`|8wuIyWFyV0w&F=VWyU;uh<>AQPv zas>FRJ2ukQzV|&l^*9=O+C)9yZ#GTc-{T)oOe>7VJ0PGAJU`ul+Rc3pb;R2$*%0O^ zf^SNPOp17Q#;kZM(zJR*BKodt`Z`K__TbDaC$22QyRjbU*3F0O(7&-VA1=2_Zz2tt z6&N(BFzYy%fZpAAHgv{xi=9wl05($#`}CDmzPQYI7lff1t_(%?8j+jx|8zG|k5$D= zn@+x@)KPfF?NPheQJ0*8#pL72IC!_z?3dXCa`$3lm@kLqO}p{2rx2pfuYDS5jf$se zi>65NBW8bTW7rSls>PIh8aIH(3zK7SA;wCJsU;Pk{HE|~aJ0vb2XV(6r5W__C1NZd z{jF4D|Lc8NRjD@!z?x<0x~870i)K6DN9x#jC;vq1FW25?d&qybZKD&m-vJmNDj#Z6X~h!-3pc( z{=bRhPbiW@mMPRd*L8~jj$GaN8rp7AuyYB~-_>Rz$@~7#=de1xb468no?C4+5EODz z*awDSXtlbU4=!*rYlzf-fMD_jTXkQ%zdXcW_;Rc#MpuMxF@Cnpsv^J~;y52_I^()& zh5FE@I7fSpW*8}fKbk&F$63Zk@JPD~4libzN&TN*e45=uy@$W(T!i?#$R=|)?MJ(#rMq}E8qOIi1UxGG;y)2TI^R>fF9|!-0MSnoV0eB zsY-{gt2+M@VlxZ7-HhOrE@##hy89O`yxl8^b)0oYv{ZUMl8&b$inS%@tBMjS#PJ%j zhUt>}Kq#5oAxgMa;6Rv?t25PZ@6X%q60%{HS*4dk;TUC|^4Fc3qVoNcR09EsX+3R= zx`er`5y7@}V1hM%Vv8dpA*%EXie;+?!krs3cs zeNWxFECL@!S%*S`{`lLJ`O6xV&0F{}7T=}g@!UNbzZfUV#c)_;Hf2OjTVB#i8yBj` zHiGHeg@-KX345jW$Qgp#u<@g^LdKJ(uy5r60SZleLXIU8)lfH(_p@LP9DCxnqQ?Wl>2)|| z&a+Ml7iY7n5cZ^jOo?T$hV6&8nOl#zR4F;`rEZLmf88z?)n=>jck)6u=5r(m` zbMoK zmuKkExyD67q%-b~ldK+pxj7r*ythY|hPR3Fg#>K=1N$cXyHbl*(p)Z)V`8;TSkmc| zZb1@CORshplDJqsH9?5hH2I}NIK_Y8&^wUn2g;^fY>Y%5Kl(EFO?_U|(T`D>2Ya9f z3Lz@R;`6{tz$9?XGZ$4eD$sC2?YGR5oSx*>@39;xcdc}j=aSP5j)h#Wvk2~u@O=J* zv(OCZkk8lqS;561jxV>+KeX$88emhuD=~eg;#2w~B2uRr_i5k|Q%K8OOoexv0e94T zAcyjtVk&ev$gk8(TUOKqv!j+_ifKQ$%feXN6E;XYrvKifUhPnJtI}kW9q>F|*jR`! zlV=zd>V@5MCXqGK+iKO0X>oXt|MkiqF z(@7z#rxHx5xu+D9IA-`==fdE19W4;RN1wOm;Arj8LRQ}pWm$Q9-*Kqvz&tjkqFj$z z2T?(2x%@o)rnGy#I5T+Y@F4)8FgPRWZW?HiK`N}w89aWjyK|}Xf3^+ zH+6Ujl?H3BR)sWun>j9`{I;*5frgcn z2eqE)ITEUi*eY0)xH6^sqJ^c9z?2Ahk$?Ak=f5jqIhf4U1vhUhE~AvZ;d-aw{Y} zqjQLu=v&kDKPqUXX@7t6m`OCB;Z(ApLYSFYj^&G4A&lE}UY zK8?*UnFQ9_45FT$x)4y|i=SB*;0j7uT_7j~v%{qH@o$ePenJ}|ze{c1omlyV!=`6u z*%23i;}V}?`jA%RAlkKQWs%HZ(QZm(9%i2_33St-X03jtcyLTy^iIJw_9{0ZxIukboWk>gIuR z{>aNX>F~EEi;h9s&j(v5;yf7BbFl8w!tPlpbAAfxwywLY=kI&J*>wu-Ff}z;0k`?k z%nVx+a_$H}w9dj#=AcvyNwuZ#yGrVWgUujo=V4`Y>2?624$WNSX#8(^Eh3)KCYHX) zr@HD1>4f4R&eKA?@uCAYhwG7m=K`Dw}ngrcMi9xf+*1xEa9%Vyj>y)1@a86@BC>PZ;Kz@0LGcT2b(3cB%5xk$Y0 zEO1hv7W5~+30EP3wLrrDovtc0a?P zosumUO>U$t_SSDDn%|d$6?7R+aKki-9q#Xp-}pLx#6E>=G>xPTwCEM`e&rS zGp&uVTm2_gDSrL_=}$lX>rV%UbDwY^a^P@Qch-vQRn<7jV{n4ym!EZ@uiHW8E_Tbi z;$>~+WtI%Fq6|*v7w^*Hz?5z3^L6lT)c{_hJGNf8Q=Q9c!EOz=;MX!{ zsFg0H?$OuteJ91IV2Apo_Y&_a_K#AT*IJUw`%YPSVRtfx!zlipo!jzqKA>WQ-~sK_CE~tCyWqJ?ESjFA#@FVmqn~%pAiA+g-lh_@QpFpAfM!Da zIkJog>PZ|w26E-wr~dFQ@R{HDBn*sB?3$O~?q%wVwRY61mXD@A}G z+U|k(r>ZTBsh#ke0^B?2p7Md%qrKY3PFk@!ij`m^&v1ppB7*@F@w!>vUr8fVdAgJR zu>hG_53Ab!QQZG$t3O6e+#8AkQ0Uq?b^hjcgAf&>QkFTQ8rUAxpIwJ&(YCoBriq1s z1T9hvdAw~)%#{bUME;LM^=|`(>0}EXrjHQ5=t10OZlvVJ^#k%9VHe@xq){z{|87^@!DvW@n3a6zhJF zQeqpDopHHCG74K&$ETZ~<8Z?s+B+RZU)2%86uE(8@`}@&T#{o;pH~B6ZN7|4qNO49->&|3LG4Lnd4r>7CbZSMPCYVawxE)?)D;L61cVH zBKwSE^ZSpJ)5i}VEYD*9O*1b|opqfe1~!hHG(Onv%4VeX3fx73O0*Ah+5ES-m(z={ zc^4ZEm}W;eIbk9_J(*PR!yP?+W6Hei z)*J}ILuix^9+Zb2OinQC>ouFnzrKI{=KEitKmFG^ZE|Hrvo%WPF}HK(BUSilrD4_1 z?|FKO^>butX)SB-p5|fq>@sXqTHxg)o}$r7y06JkuYUf)57p>Xy!!e3$#1WIeJ*Kn zNImkX%$7$FaK55>ww7%eS(F5i13#^TA;dy)`a4oJ<^r`jm_3$inCT_gqxGnjx@>YO zaLbX&fZ1-(4mzqunlFW97oq>>ri4$EJ+n111<{c@a_CK!Y%D0xx+gJkzywrw&8~Dg z$ih--KR!%@aR7!E(|4A*kQ695w}2h`CKNp3l6Hk+D!-koYIv3z2A8Un!C-m(jJbDC ztKwaMn6IpCOE!v+xJda!D~iZ|8>Q_}y@XUe{nz(zCQpBU_2$R#e+8OrHH2-|$h}su z2U3OR?>|E`QGw5`-8a?RF}X09+PH&3fS4#G4?F?1+O{ISO||fC@#2fODRr?DQ2LJ- z@1%NsBxW2J=9`W)%%$Yir!Ac9kQF|*!(ZRYQ~Zp+EZ*D^+=^ykX8oQnB}MP{gL6x( zMGLMSbVfu0z%LPT1TH5}~1hl*h=22=ExX;w(vp}%M88fwoB0C8r9 z&I=_n?BC-AMlcm+6=?)$*d=*o#9ITblku8Pd?nMYajA~bcDcmCN@-)Rjb56LD!Z`J z-X6rxEd5SF+Pf_9kIhRL=c}>6U~_Zu6}koWepN__tC|Mahk$3BEb;2!Xe#w=Z0o48rL$8%{C5A{l+JV8y%$Zox~ zrR>a1;XYZs9y1d?VKqd5-e#Gpq6-#bWMy*C4Cb`hObdmLxlWVJIGR2mG?qrwPK!+U zC7RX75_@7OmbLPxW5w&Dy5hRS!&szWnI4`Ske1@Wm`;9A50w^g8m|UVJ}?EVPUOxZ8uV| z#@e&}VrWxrOkjt`<2|9t_|j!PG@QPsfk*avp|j*gF71+TRc~zJlyROMtqS*63@|`ZMdB zvS7_&yE0He+=Vc#=^xji>7@bNDpIiz5b!Zst}CqZtiOL#gA&s&FS8h*Q4gwZuL5W0 zXY`s4YTdT^h3|47so&3jPeH}Gw`l2~#n#t<-J%_>fUgicWp8q$un59qh#@G``CQ2b)9balpRHGof3qvW)TAIG%@0;rvTevMxPcKRI>D za_#I4w+^o9Nc|aT_WR-PPSt$<*RoFB-hJ{Ni+oe&gQ1 zluv7KPH7p6r720dik=#)$EY!#@*TWKX4a?K_DjkkdLTuht92HD-7tOO`Q>gYX#IIK z6Nu=tzz>2pYiqN0b6qd^j_Z%Rb=7P`GcbZp7NG0RENveZMnT;h#W^Ew+%P{E;wHWR zLo4D^Cu30$Z~P5$QAnrvP{ROvO|<#>osjVRmuRR_guF`xT`v|l-FALCQ@T42c`Lnp?5cFOnzCe5BnK&+Yfcg;!v!F=n8Voev9G0%y)-Pc&V#Q0owiex|Ii7bl8U{fPr5$$ta%detMar0 zACWSE{SDV0lejY>4EVDS=V#IMaSdKc%f}u=M;@b+XX4tYQ3sWxO%TVu88*TF=^e$T ztf?yY3V1KCB$d%u-Ye=|tlPTd-WY)#AtPXJ(ux&Edfqh^+^3VeUXAYf{F8bD0S|6P z19&(17GBAw>!qV&t6fw3U!h1n=FKUD5pVnIkka%j8@Txm ziEGapBp{5-ceCzppLulu!YTke9^JKa+>rCGC;#*D!%>YlLLCW}_Fi%JD-Jh}EM9pW z@jh7*M6i6HTX)*`0?ZJSG=x;e)ke+qHn)dGYo-I5@--Yvk|~z$EKYPqo_{u`&NMpo z{)V`|PE_SodC7$Q8?C4Q1iz&=4#g*GAzEtw*wP8PT|c6i!i0%s>K_ zes8m)B~GGkfdZ90LD7k;qToQ%6waEHLtU-Lt?r@KecqTb<9n1w7HzKi`VCkw>V%Tk zIui_YdOrEiFzrh1;#(Ox8F6uzX={%jovRHWEMm8Nv>gni>P8@ZC1ocd7h?*`hGle` zLph+}Bne3*Qn0N=#|IjCAicO(tbY1T_IwtnUA<}UbH}U~-w-6kZJ|GE2$*J9j!e*h zRBR$U+5cd03GEp;zV4~T*X2gfeePKG$7(}T=2Fc}-!k%Rs89jGw_pRasvUmzP1*&# zA#0++nFDr1ET%}m=f1Jo^9>QKG|_v-oqn4m$D5kl)LtED!S$?MwKc|!#GEu`~$PH7%iXM6m*(pK5q(&%ncFqmKJV9qssECMO#33l<>{SZ_>t;1@u*>}#-OA242Tb5K z5}EBFt34Hn2nKq=A z?`QF?WwLM;;um1wwDUA(bem{Ial0B;MHR5w$)#zLJf&s^9@xvlcPJl1=~o?o!S`?X(en_9#Vfu8O{03)x2|r=u7e@)6IDcwHuc6WuK-^BJS+qI-52K2K$zB zrp&_RrCS{bZU>JKYgiR~q)Efz*dF3Pl%lJG4Y1-7thQq|PX>1DGu z!xuaeM98WAY&U|XcT@M)Pr)si(#%*-+%|@nuYOd;-Q3Q&PcS<~;Xt0ak~C$o(%3Li z-?wtnS*ZfvoqTgfAcYEX2h2Ha_BVB@El^GVPC>!+oqtz9j&I`Bw2h}Ke{Rg(hb3~O zM}NSVpGCM_s%xc-xEq&L4u1K^n>SZK|1f#_`s(@jB<|1BROlce3hq5T1|;}ae{6W> zt($r&%ua~>SpkQ)hkVyu3x>na(5u#5<@Buf9AHV^R|fu(|FlgW7MO_)Q03U_m_jal zB@ZPDzB=+ddmM)Crr&5A0-P$Kf_Oa#`EA@YHbdK<=L!+3!PSRI(bEmzM?t$EFY&2C zQzYwn8utjVAaxDPw2xoR7okAu%nAFS6r&h(6Sf$3Fj!jm_0%P%ZD|dM>wO=?to3%C{;12c zzg-=Oa5X&_i)d_^th?YgBgjxXJ5Jh_BTm6AYj^gT*Vfp$JF)cCKIDxY6l5Fkn%bxn z5a22M2N!`A6b(|Y>F#Qx{)y{R&0eqd?#ble|NY-H==& zx7U7^2GtboRXe+OFGy2FU>A*slACjRx`-KRY(%4XZYHiI(yB>TIYw&YAgPRPMBfO1 z;>!8ebvsqE;u6;c${5zgDgN1)pdVp{mnL(EDS{Ed@@UUJomtx(qY-5~+lZCxjAbh$ z;qI!@NQvcat4|Z!rn0`v<3=lc@Va+sSm#-MA$?MeXC7z3HNC1RKy&)7dS2NgQ5D1a zU~=oyV1kBty*q^OB7S65(dg~83wx5BsSyz&a{5tZg()uH$oht#Y}JyNQ58q;F&RJbuc1N z@A9AKaN%DKC1)x+#&EDCT3j^?)%KJEbBrP3>9fupQtXsRndyqIECP@G24f5Vw%9(7kIJf|TUT%E?)u1Q*SGkjQ=*tc4=;RV4Tmqs6UF5}?fT$C&RDi zoRD;S)F10^-q@YBvT9FR&#s}Ax1(ExNHr(R*YupCY+P3Q-X1g;Q*3}XVY^k$W48Ck z#R1_mNvy7c!evm;csE@(Wr`(ArqFeS37M^&0ya^hHeMiLR5n-sZwa%6sh|?t z4~Ml8;J_#zIi!0J*iI{g%Z!?Xr4(U8gB5a4N!(^D80*v;u}ruE_)>bsEWl)L0mWNZ zkT_p}emifvIYi#F(-{yr1%SwVi3T*hZoBIm!zfnx*0oPlNezW`gAImMUyGLuYaLD+?lnf7pl3zU?FYn2U6!XLvyDW^?ZW? z4=_W~juOuYm8lK#VcK>w>s(3QI^{}nV%U#dVQiB1jHoGW`lSZYGpE~<#rsV`SjDVej{E1QusVu08Okvq5x&Bsq@_Rqw z&8Iti4XCpg^p##_`a{Kt%xO>T34Yf8r1RBHIyFo4`td%JQQq{B=aYXKX@fP(O`X3S z9@!0BqgIT(=ihseYo2k5^b0R>m3vGW(h}&ls!zJ(b0l4$Sy_^2SDNPbq_sq1_+yVR zs@1r;H^R#8$j+ALG+jN@f$6R)F>#M8Rbgk4?W#x6=6k&p6PsDH2H0;1_sW{9_`dCi zmTkt~V^kvCH)RMFOn8l!O+5-#Wr&G)wXI%-C*URypc8mzTne{fGOdF~VACMKja+OF8&z;0Ft;xAqOGL6!+2H=Uf$^!=XWOYf4_8X|IOs@?QG(ZQrgq#-cNRv z!Mv_dCa0LVVc)Y%`KeW`P-B1ftG81jV%}V5J2}!L-4WQ_Zi{b+hh%yW10@?x2G5Y{ z@>2Wi{>9hkcdApI-4)WAOyxY&kri@-2;?CDaE?v`c>krV7*Gyy)-E7>wOsETMxGzq z^#{tv*w8+^W%fLKoqM7$E0)@dhtWvBtbT6^%tf&-&25BI6#xs2L=c#Lw0&he@wYh5 z&>JDgVm6vf1hj!+Z8}>YF7F%--cvh>XDNK`S9gsg;arC7nwY|1J~-bBoHgn}C~?(z z&r4!AFL49mht7_O>d)2^HsuqML7U<7gvmVB*XT|%zKy6jLi#Yhy*bOn)nZZEKbe+M z+peE?OoZr#aLM}v9LP#AhCr`dOpInvTTJI*^bcikI?V_fA z>Bw`%k=Bkw=`m9xIB{0HBa&Ead;C1TPai!tha0=vDTg*R98uvqq2d(1zhp~#x=B&_ z9HH{yTT7G`n&BkE0F@lha+X0c5f`NKzEnB^2NuEx7ptp8>d2ui&{5g*`P|>3`_*ZX z>iKHR?FTFM8X01>jvDDmY03&k=45V~!g4Vdx|98T7oH;l!AeZ#tS%vEnK!752o`ER z8$PGhb(p+;{0Lp%m&&)^e)$CdC9OylQuvwL3$rcWBDG6^-8dn;Z!bGlVuF*Hi8 z)mYQbS!F4k{X>TE{Mm0EB3OKYYG>aYd;vKqzja$TQaj_59R0~RlN_bB_pAk)0*}iH zqPB%A4U@HRWy{N~AfsPm#$8@s-t{1Ij5sXo$riFVeLRuw?R=75uC1|^>rq@>R-Etm zJv|hoIuL&A?@7)|JEP+d*Djh(&8>af7S>R+%a2tQ=lrPz$xS*DePa7V}x6Q!tiJ%m~l8rRd*-f zRa*;R(>kSNZDa-M$9JKo9r@Hfm&T2Y@D*M4o=;M&!GYxyv27%blNT5Cb`&C5nX z3TQ3>9XV4#dY!IGpxC1?ynMYK^T_Ofi1e1mpu`_WNyb$u32+-XAoCuO_uIFA-!@s>&%m<*5>IFGOyE5@%?;VbZMFH^ig za!ATM2T>?{Q$odwL8hzp=tzIxke~y>0<&GHnBZBVzXB+({==v;w##-d_jnGoN#I8o za+S6ZTZa#JhO>3q-xYXfrS>w_y-fWPVHv822vcRZ3cDQZUf{wXoY4|gNRo8->Nc>@ zg`OUb7f_)}2L*PD6hH{(;f~zhrVsv9#WW}dI12v)fPt5SJgO&1#_@bm7qzM)$#C}I ztphuVPU)vUr$VnymZ!uFwCeR(|I(CR*(95HHnr1{Yk0{SPN|>K3#4sDZ7z6wiZMVS zE=SeuoDKs7^ogF^sf|M;Mf)PoH(t zdYRRW+5WmO+VTL8!&XTwM|9?^xgxT3d*4;-W{LM(DTR~l#nqx(wbtPZWo3RX{%MiS zc47I}H9Z5G%?z9B!Z3ic>dk#FYeTROFPo>)w`&^-Xt3@z@TTgkMkP{hr&%+|3wQ&J z(ZXtFF4mPG z{kKOCA3fm8Ig8DC>#{ryG{rpJbry0G(N*>WZ|Xda@TlA=_TdFt$IRh0C!CPVBFxSt z=xQ)F^%?8jf;YaS%C85Nrm1M9^A=;pX={}Kf)*2g)efiPcsffv#ix>P$p(tK>`Ui8 zO*&lM42dx}JLPehjW^z_$!0=Q-NK+6vd<~eg(Ym$rNO->wow;yd>qRi&bcrCAl;3z z#KEqs!3IHA0BEUit_FL67{6qz(|Ut|eCO$)Df9}n>;88@7M?!ivQLKrwm%d^S}LLK z3~`qp`+xr1#lwfw6c?srfOX;Yvw!>g;luwpD>=4Le|`Fct@Lovowzd9hK?cY_E6U$ zd7$w@x%HD4-;F~AGy|CX%=XQiWgeWJeXY9J>uT7ehD{g;(Te2aFPGWM^~^g!l{qeQ zW~b$`>peii1eld9MYMmhvE0B}C{F3y+eW~y`eyp(>cu}M&kmDc)~coa2&)3TpV!dj z&nUI@DLzym#7^yB*XHaA%kJ5sZ;Tn`SjPL!_I|plUb{yL&Lx;t;XAoaY8O)!go4l) z{J|IQ=94ySRK8!Y+HN3V&3rBvj@7D1hD>WpX5|EXLW%o#Uk8+T*J(abJVBgZx$_}p62cgo6LH*s?!UCRSgMh_@L(&CSc^D zP#}cpb?Jen_7ek-q1=fWCWL^4ez-ZfJyySK2Q@LWxt^g9(lk?OA4xf%rb8ErbTVK@ ztuqfAc$Woj0^jfEyYa9;)*9QMkrgq1N1yTc%=c9vYF|>g31$>V1;*@N2>=Y}x!hmYiz&MSBd5DU zP+8FE7J=o^nf-#)mK5DE;YL`y2SXp_l?VfUs`8BohJD;XiwHmK{FO&}rB>;=%kyIF z57t<%hTP>+vIV;bYqzXxK>+!WH_m~P<(`uW7(H-_n7XdQ=1mR?Hq=}T5H@X#Sw&o2 z)3zl&*v3I-xG~Rcw*+(hgSvLCLZvE+*GN@V)eGhED;q}6P4#0v=ox$)4=%7sPqX?mMI${K zC1jJZgP3JOMdxgfr-}$2PFo#RTn<+;A)V01$y7#r(j2KF$kixZPQKfBV&Y^Rlm{!W z`y+XqX%^V~xgM75<|7@A3h@fg^ia||BBqULuuiYMj|y;Ykt-c|ej6O0*A_ z_VK&V@4WU+NQK{T0vvLLm@PM+F)C`!vf`J%F=l=il6LJQlC@nRLJ%!5othHa;q|yd zSbQj&lEBynd~QpZ<0TmNII)g?e_mp?FjknSPbWXUdXr0*nX#KImsS)A!5)uU9kXgA zF@Yr9t#hPvR|q_q)K;4nsY5dYOQ*l}H5Kgp9rdCIQ`00e<$UtO0KS|XJFl74#w;lH z9RznVF)0>54&mzDuZ{$yqpsyr^tb~LtPD9 zKA)`#^G7lK9ag_owOP&I+Ke5-9!E)-T@!Q7o>`0WQ>}`dsu@P#!xfjM1Ed8Z{n?4D z65CWJZ6+jGw-%q`()9L`&R9*EjDMxl@jH&mS!BSeh#FQ9+%;L+FbTyXxT20RA-R@K@~{ocNO@aS*vCeLpZj-{f=W2gl;C2UXRsgwK$X1%n<(EJS{Zghu(_^>*P&f%{H?O{N1HV#)q;P12aJ z)`a-C3%^IOH|vFgR63_FXIxapgWJhZK^zpSQ@>J29`ATx;VK?k)W4$=e8!)-0$k%E{>ljcN&1(tT%ZtdK$ywli>=uxz6cD4MMl5 zb_DM3cYQtNt;2$|-hAkS4lIXFmvf?1g8(-`$iIniwfw@gyM|zc@ns|gP{2qB_qnj~ zPyb6;pma=QcUclaXim=bg6YGQfTY4)h5>7 zdtc`1AHv-;R|8neg+kIG%Hx6vR4--&99PcDTn9Acc2>L(^EIGLltr=Zs%wYZ>sj7g zRb}@WOY`0}imeFanGAsw8v5mE@JYPh5eBb2%s9 zviiz$Dj2+`Un^z(EakzA$B@xXBfdiUhkKk}m!eRZMNM6C7*_UUQ!c69zrA?!@*QK` zF1p*2tdyo|xkw5YgE2=Pp152xzG{#}3Vo=k+8m8}Yv{{Y;dVThiM}DXRD02UsK$8`fJeCJ2%EuHrro`Md8J$lK2EPg89_Huc~F4VZ?%w=>ply{{IHSu#1( zo%Y~#Y@&ze#d7MYZWm}uRvQ3jwagW)olmItBgoElG+0{eRo;q~#i8e-%8|2X(g)7Z z$B6Ec;rtqgzxTGOWD`3R=}|bgJ~?N(V&!38_xzwwn`1)MDo$Okn^>L0$^TJm4)}jSkIo zwFE=9cRvKVf3{SOixLUTW}r90Y!8baN+L&FYZVlIv>>Az%|2TF(T$2TD!r?-hvl%6 zU_iPJlqZc9$VG5`z6OOg4Y&h-K&j#rD-tMepQW}@%1elvBUx(a z^mh4nWFTY#3!Fx6CL?ufZ|hiK`H$2_xvDI%FNX(H9&=&}J%r~- zHS^xxq&ZwD16R<8iTj96Nk?}~WqJJEM*p7)^*zv8miKp6KDP&?fGSju!f@t|Ey)5SvSg}yfyBD@0=7jy7t z%?aD-iIZ_~3ZG1#K7a0nC6zxn6=hRvmg0JJ1fM^D@bvkQ&+lQ0r{|U(xp^K{w9n}_ zY36@O9|ogE7;)ywa+6DUc4+s3UqbOg+tn?)P@mo%cCV0zQ>~Deq$W1Uv&Y$bRhou# zIHg}vPSSwji>69ZH${DU(y&^_QhlI-snE6{!bN?JqR(DhF9im3d+?CGKcuh=rdy{7 z=cHss`4=!hf8TF*)?71jK>qKttN+K|$e|*BVwmO@5nC+{@9@lkwMFg)ZOkH=0(GGGidNWIQw)fo*ci|K}r9=DRJuo*%F-V}JbqIeJdTC10dB}+1uN`<`pX|UeR z*vlNU3<<_l5UujwOYhd=$DVmV-V(y%wp&OlTb)Z{N{#Li+gSQ0pZ)jxBY35bLXA%q zRSj7rt^Ysv-ULq0s!AKbUA?B0PABQ?AxWhZNGEhEDrHu8=f|H7)89OWb?pT zpN+j036w-bgs*fUou!!|;a%-U5hz*FBNd^nnSf>bLRGSZWG^S7@|eq^bVRDAjK)y& zlfr(@y$4iTe2@S}Z8y$X9}YC6aUt1~7ZVc7!lM#NTdEY!N&<1}iKJ0Sa$}y)(JXK< zg=N3tnD)HnE|hLnE!tz%x{Yo>t1>v0Ik9fg_yPk;u}p)|QoO9a8E-&+_~k;Uu@?dO zs_`>75a6|uNQwBbxo$xgGC6K8rf(MS-~LH&A3*A+Vz3Q}fq>RBiTQ#?RrU+0(MBms z%-NkSh=;|T=LJyOr zz354ISuBo%g<3Zwn!d!TV}+l~itEniOX`%;%n<`VaYUH{$~*AoVomnZD&gvX55Uy&>|No)9B;O zXut-4g3?(YWI9x$X_)LKmmu%PY8>X1(GVmgO69#TslVvHt8pmRW#3u%U5(_L(Xh;ntLxwd%($)|*9HahW#y%f(*<;}mW^XGe*GDX=oVs;wNxY8$JRtW?I z)h^sk<(!c?Wt4IjM=M4=ZVhBK^V4fpjqlh*PrzrAG;WnBZnQg_sW7h$^$9}AkerQ; z=|!{y?lzO1^j~2(@<}V1kw{r3&#fJB^9J? z8T^6>%Va6u4ZcI&%2mhqNRoz>?g0UvW(iosVb+Nzdp2AQh`tq3^LD6)iJG$J5X ztdu+^rM7#zQIg)AS_xZWfew9qTF6PmN&=WS!JM@aAZSW!VDRT&iAb3Zp_dn25SAT# zJS8EoFfJ>eUNW&u8ZkbTL@a7X%&hx?U?Q@XgA`5RzSkTX4C%$BNhPGi>@qp)q^BaL{5XB`P?nR z=_VjBM9U9TmwyD)L6#*uq>_%5HUu}1hM!>On}8`^sZ=yBiPSa8C2zRbC_lFhy3I%R zmWj{^c-XMR4dw;G;CmPL4HHnzNW&-;g$j{W*9-t&=tbPrF{#KaUW@b&mI^p;&?%w< zau#vOyZ&@8GP(1V7;&pnSXx4>K8|y?QGms=Kr>9esy=K3rdJLlbLW;j|xEOdE<@<{_6$)=UABs!K5Thomr6q161 z44xaMnULs$QpY?`JR8$yB8L&nf(W`DjiT}9^s`Naj@dvm?ZwV1R_!qVodlwK;u5Ko z<&cSjQw^^q7XP$I!bnyD4~748wEGpy!G3(e+-w|??(@Qi_zVdhgdjwE55QZJQNqkq zP2pF%K6Qc@av8~{r*>E|2umW^h`<=k*`Syc;E$|Ev%Cw(X5@TJMI?4sopcmA6j1@| zv`hQsTajxTb3M{Q0y8wA%Z-iO4R-8%iSoH#Ldi#Fxz&0m)DR*3K)$D$~0Swk!i*R-muxQ+G8mrBDF+hc#vw# zXOt49Axs!2d|`vkx~e^>5nJI*Q`KDqq?8b}Jwm6-uMsabCZT{o#NHBRQRDzvxQ~WY zBeOGkUpy#`_JpzC?bum)Tn(dTd|#K(2EO0_1AnQ3oTlN(ZO_>WrjeMQ-E(S7fp1w zGV{J&?kt*n7+6})X5%ALBq6*^1g72F!-KB4ac(>vjrDUWV4EHjmnJR zCc-AA9JV=8O3abVM?$Rn4SfY_>Hw$a^Cu-aeR3%*=u$!Wk@E6_U4kuQk$I3qUis|m zc{4a-PHF!u>1R|UW^blMkZ}+lZvk85SZ$T!g$$FnXhc8j%L_?Ctgp&By@DGW6t zgJW%sNxX_(OxWAim(O;2G%)M#$kgb4=w8bZ$5DS?vKvYlZ(h$-9vbWI#U}d<)DCQu zQu6jh^%;utDHr<~v&NA^V2z5=ZXIqxc9`G7N1!8KGz^a(xz#Mn;{YcG@@Lz}KYL92Q`JG=b8kya75Az>JQu0gJXX(5DHyO~bW$G6lmBkTVC7Tq6)? zBMJORM5aXL}HZECLWZ{-J;uI^IAe9b&FaTudmT` z8r_T}7_#bb-?Z-d<4?C%G@j&*S?!Uy1!AR;>B}g7bE|TdwQ10T@AKj!5CicLLvQ1O zOPbFYP@xQSC`tefm~Bp6ziIo(M}(=qBHka>Sx8&bLh-X9j~2^WZ+X^)Ky4AsHo`iS zQo(_Q>aJjgp6!a%ttsPJUeq3`$4DuVE^u{a)|nqOzPqwNW@%43XN>!nO{17xA`rq( zV+rV(~-3SL}rLtB*sP8|NWQqNQwtzG}ozE=+E{*RqJ~s)g=}B(Pbcx7C&0@ib0XUgyIQChzWG=`z;PXeb z*COU$;KIc9WdU?dJ(|%>Tv^ZB9!qM*o(~eO13scofu_P~TQGZq&wfHnGBc#Po1=WL z75-dBc|>Ml$U#gA>QSXr0dbss3u%dWb@gS0cyz$qn9viP7QG^xQb$pmITZQajrv1> zj#zvxOD!Ms%&EaUtEHyRs&c0KUzo;02oKq&k_H85DtVHo^AYVkZE^L!5i%bXDIGx# z{W$J5PVBzu@D`;e9XaECI4~U4G%fJ%+%E zCYd~`x$QhI-cDDn^W)))JHQ_rdFy-ceW%WV&==re-bfs#_sWRNWKeyGJUeTOXEu_g;=f{4?w^P=L-{ez@6V z()3~V=Cf14wWX6Qma707u?J~2xCVkY@N`Ncz(p(=wxkro5hjcB0{n=`i@Ui}zVpoS zIj7=B=@^mII)l=SbQvu7_v=x&L|RlY2MGumyPrL_6_zDA@pbvY_FPQVc3F(1p;aszZ+H+Dm049;Hnh8eUN%%OYpE z^upn0&+?_U$M@{ca&NCJtqNPHxi-*QVOOQZ)S}ZbVk}{?FUN(U{g^M5+9uED{5XT3 zx2=!VY3vvuaABDXMC@sp@Vhg@XH4$|X@3+WUXDz(VaD|Mk(slAB@01hS=JczN*wpO zPA!SbIwyQ042SU$C~w%+Y`nd>bgty}Mdj7#Pe+7YV#QAdQBxVQ#uoEdPbKx|WZ$+~ z#RHKKkk@krM`tG|%IYf6>-iWWZN=GBO z)8KCp;UB8Du%&c>!)^ifF0#Oe4$jH)(4$dO8}0H_joOJ%io>?rS4VYv{;VX3otzNcl8RKvCC^U8CjquW8sSuOaqEeF5}_rWq#TdUVLgJ;W7nWW za7khz29DF6i)?fF%^C^&$RI~} zP&jf!_OLd{SuyW|G{J{hFG7=tJmyDz7CfK0iXkH`cIPNAuH>y0Tt)h*AsMh~f&z?A@1Lp}4#RdQcA zN4G?=bVeXXign4-B`EO0fKT~CY@jQ`!(@}~+AZa>uuywVlxEcmk|RG7sWB%*`n>c2 zKIS-xd06)|?lndu##@0g9b~mFuSD88j<77NS)Tgbdt(@V&&;catV;{bi7h_Du_*En zW1-21C0UD|Wr907nMgm9{$-i_A%%!6mWTbcd;iBw=clS?sp2@S`5wDDPmj^MtC63C zT3O>^MNdPbDJ22%2WU%r2`O&|@GS+we~9Z8kFr|F1xn~&lpZ@uVw|>=yX@v{4-|Z3 zEQlxy3*7;is_fzgUG-$I<@Vabt6hVx-CtizV8uYagZMu06DIHPCEM%cp; zOb0gt*t$7UiKpn6HCN0IWc$;FAiy%hOF8@RZFIF)Id>ghzoM&-TisJl46{7o&Yeb| z=^C8w+;`|2nnBOZbnarh4xQ!PU3Bd@i0Vz(j@eW$U2Enz_c6K-nd{t_>Dok1{x)5O zdCt8^*JZ8FO`K14qU)!0UA@4$DF;)3&^7rG>JPeV7CLtoUF~huR=Q4HE%k4QbHjAaI)>UpSL-_G-bvS%_0By=*Zd7sC%V>dbZ&jfh*D$%pte|!IZ1KN z>JEMtIBgIYOR7gnVG%{xDv=>iWN4U0Uc9N|yy;7K(%GRsBAgM0vydO^*a2&q@u&+4 zP=@wFr07+EA*lx(0FpFHib15FEk#=&C%WM@qe`n7Iti7b+Ccx1?!2a=i+v^8Az*`SZZDHmdPeR}MD~*Y9S)vVOW5%W9E~fonU9Qm&K@w!zxdPy(a;ejNRXKC zc=m4edc@t8mar<@&Opr_LVk z%%BEkJC7s~n@M*}v9f`&%~@cUviHG~B-#XojGRu5{Y`>V40h!)f90;-rY6yEaIFHAAVYd7H7lu+1W zm_8ooYe}{QOOz6uE0us^@Q$MU>5Rrcg8?;%K$dq7XH1-T%ZV?QWFRS~9KzN+cAOYe zUXkXk_HTIYl~Q1csr&}gl87#TJWN#p{-S&>9J;4juVS_nJ;AWkoTO0-%(xOg%g!1l zYQ}8eapFRyk&ao*+hdBFVgGY^lRDHwFrIN~8n(^7s65wv5TQeTx)2y3qPWFO|6mYO z7Vy9$^jYykMI6WF!HzA+ElJ%5NF)66>MsfLfxNu}AvORR%y=buD1TGhAQWaDy~nagbVXtS>E8PSf`9H4$&=A7`8_#xN?0jiZnh2p;5l%16nM}-90$3n zjN-*WclMkeLoY>04Ca7f-;~ZymNdZ3YBG@#zSVp|4}=+jnxMO6b14p!C}e2kN-kfq zY*`RzT*&llP>-ZV=`3bTN<_uFNRc-K)((={ZRxJifD6lk;^o;}K*EJ>QQ0nrt@q}V zo!RpRm?x2RMGI>8nJS7ySANJ#HX1^XdmWiw0u8e&^nSQ7DU_A%?fj2Akz^D68e)R)oEk4J7>pa4d@Ea zNJ6$3I=c|$nUDCvF+3z^Q(Jn}3&T*Do_2+Yp0J_a;$%2NfbEk?^~T}I%vWkBrXizf z->q8^2NsA6jVsFbALD-4tT=wr?JEW^DpS9%<3nmS|rIZ|kUR_K$oaF~QTgmRl* z$ryAh25U;od89#a3$JaDS%VU_)31 zB^;_*(szI>k9I^XHQ>o*PenF27|2t}4e5e*pEs6nB^8Hr^9cX0a|%U;nWSaW29nNJa>c14nTfW>*5O{OaigN2z{&<6-byf(ZZVOQyh49}vaaSB0* zm3+6+xB%D$D$Sg@6MM1+BSbUHJhP~YolD{~BI>{74jw=DV)LOZpt0tr;7C!BbCjGs z2D4r8jg24`ER>6V;-Ug*roTT^YFA#UC~<5QWgM~o88#{3SIQ1+QyfZDEkWNH+tQ2pl z#IR0_PwYGxDrojgcmwz>r2VM`g-PXl%62P<3V^5mS*|2=o?-};J4lV`*+P`=v}jXg zkaJUNy!2kb2{9`RO>Jl&1%_R4!baUW6==Axs~=h5WEyH>%dBYC*@3ijuR}e{bf*@3 zE2@TQktml~-es!q8bRQIq%&sUm~v1tL84T!Y=>y-_SvEQpz&MgZOcOtuM~%Z* zS=lfgIK! zv>{taBB`IWJHw>RaG>qzle~MyC_1#9(+I|5q|2v00w7|SiNb3<1}ozIVKX(y#Hn1i z+;CaRo7KZpo~@?Ii1A1!e@CZK(?`daZZ%3NYK4Uh=DvX-v7m+}E{@MP7U4sSA|g>@ zJxOltQzca5>+MXck|?xHXgqC?(1aNduY)HQPQlrt8u@u2=CyCI2W%}gS9YsGK=r_g zLq@p|ih1cLdP94}MM7% zZ7E|RaQ%`4WH3F<8E==A@=NUBL8mZ417H*TqBq}he2kVo=q}~?(KZfAu9sFJF5Dk= zN-O(&RU}w}emPc<=&G{|JTVz`WaQ^8+a_9hKuHCb{JdnE=J#*eOuGNle6)A!{N&}fuGTR@sHL`-bDkAW;SG!wU`fVahm``xh$Fsy zpYygMkqzCFdWlUU9BnzQY8s~DVqwq$hC@6*oTG_pJH=Tc8($QgBQRtU%h@PFnPyyx zq;j?xu>eCc1?Q$@oB{?c!urB~AczdW9mEPE8C!9_5`uZtHUuVN38BnbUF=6Q_?a~T zcp0{;nC~0p8_`FWb%4%>pi!56Od}8TY@3GpE3#KeksbTd4n?C7SDtVy$k8K*6q{k7 zc8Mh-juRY7S2CR{3h3mKm2f5&Vr;+ZILS{SqrKPDItStCoRd^uoQ))1(p4Qxp(T(~ zfuk^S!w5hb)<+?q6YbK2gd=V;BWPr#s1WF;d?*J?=PV<}<2fJXz`m4QsP?SRiUk}o z+-+5Ro3I;qBsn$SAnA_T!D7coX?Qv*@%V$Btk)|+Z-DnuQ9GkdfIg8?>QvF)3%t2To|67_cjOedqe5pH$Do2x z@T*Ik+9`W~R`||HLmJ>Ll0xW|jZj0%d+srH$t6p$lB4?;(~XNq-qvwKW@tZQ1fDW0 zzt^aT`-D6Lb3`eKfp%Wd)@6_xCa-zG zv6J^}w&NZSQ;1F_%*cX`yuiLFXdB8`nPeAEPtTP00Ei9K$k z)O19eItg>>%n$VoMuvSZ1Cjws^j|qR_eH6mORQ}cB&~3|BvK8qz~WFwY>1dnO6)RR z0j6P57tpY84a572l3Y;8s?*(&6hZ6&!1=;8t^NQDbAmWT=;&Z3r^(6z>6fE~kd$k} zLq2$m@HN$EY4oL}vPo^o7oZZCI1$wDN)CQb)>Vj>p&dab9z`6Gomt7RG$`@}PQf&| z?SPiyNK6{FC<>DU|00>w6J>5uEEs1IsQ@bRu|pEW2u@rx{6-l9l`||#QDi(o*!r^~ z65IDbrKvip;{~E9WOgCO6?27Yn!@yvQLx~urH2KfINm*Ixc%cdZf{p}iyEs#m~_X0 zq;>`i27SAGIC*Bz*}$Y>b|;fX!7Fuh1YB=k4Hf&*( z1TcAy$61+TgVX@?*%X-`u_(kCSl^rP|Y3Sqrw1n?*Y*99sS|nD{VDo^_dyw~Q z&c0VPhfr^ZQz{j}Ny@XOPzIlMuB4>4-Lb_PQFYMqL6;II^yo-Vz z7Vjm}b&(UKIEx- zr@JN{CyB}&BuKA=17xYgCr9Ol^I8~_yVBmCq|wKPVmUNK0_qkb=PFMOv0`GeBRU;> zEI$iP#*>9OL1Sw9fX7GIcIB0_5J`IB03t*!%7IhcMo!;|79xsFX0kV<#b{3sg~%j$ zQnzIy<5I|{0R16biriK?3-g0XwuH`7^0FJ|v_D zYncr%!GTT%ulYKS+gB`iNbKfqD8kU7-!l)G5a_5LY^QKB9?%`gMUyFXcsQP=f0B^J zD7}EZH{A(XdCs^?ijx~6>aLVxQ<079x_uU@K6~kOh7HN zO^{-*h#8K&!1`i?&9-23<1O!^Rm(g=o@JM4ipHX7Nu?yDLk>oy2ZZWW7yydtkC^pr3qa&^Ys11AM|HQQ+U zDbFKlynB(2JTftf%)nPPQ&%jnz-0qgDd2IK0VG+W&r}~;?Q_w2VQaJlu*Zcnp)(=x z0B0P+yaNnI30dT=MIuL82LsYn4@aGE% zK{~@&=|W49rxS_X4r z3!9UmE9ki`o7oE#Q8J0DqbcNRUfPLEu|X*X8DwOZvdr;3tjrEDpzD|ijAT}sbvuQY z@ZA#Y$yieFm%uZEsfcithEvq2JT*L^+(Jj&4xx2il(fLEbigo$7OUkFs&S#0P95j- zxv4+f%UHd%QcCMm+M5xWmxd;>Q;%<@1%Zwf0`nMnmlaU(v87V!entdz71HN3V5Gw9 z!l4sM;9?^F;?7KmHdP|d1H6Z!KJz9%Sf+_Fx|nC~M3e9RbPSX%B&wHEU3pmu7k?5& zR7e)J4?-BbPL_u*0{GLoZV0)5GHibGyl)653P}7rV45qI#A!^TJsr_+a6WThV(H3N<_nvlBwF$X%Nr1R{w!g)PO!U|WG7<@kfHgIV=V}fC!XZso}vN9dS8BoomC;EPmXd`^kjSa z9AHkJXm1v9O3VcpvDPg;R-M48JLXp^*|r`%+MDeuElO_3L25f4S#U;cTalCeh>Mcz z`^!tVr`h>742`L6Wx;-0zQTSjF5S3uV{v;rt21~nFB9HcyZjMSvQSE&$)2up&jZX# zQ4-52&|GZN?gEI*Bm*rGbOf+KsjX3Y;A4@qVvoen>fXJ4waRIPp%sp@BqRYLKg4{L zO-C}9ha|(bgm&>ZWrV2MSCsfJa5>OI)&)_(yXlSboz5!-l7R^0*FUV;(ISt5 z1k&rdF=O_MB}iY;O#{$ox+_Bv7b)R#Y__)tbOQW39zLid<<5vFkXr9nFwuKJ~%bQgM%KJ>DnFt+)? zC&*ilISx7kV?77)8Y3**54t#WWsXy3h~fY~bLER+#udo~$m+GsGbKLO)-hxTQ&;sL zs4@dEHsDy1Eu~Jx@(raK`#mLHNDr)4#bKYF#hjD8=A#{pS<5&rd>o*G{N%LQ*i;o( zs@tdD62coH?v?ljK5oevN92Xs;5Y;sVknx33sypBnLd2CVWC5aNc+eWER`>4ITDi= zo@a!-u%JaQJ~?)9u0~*!lLw8;fM#2SyeN&UeE3Xi*!XerhaQZ3_YQ85(n+$_^IbpQn&xQBI zhwaGe&+gPaO3dEzPCqwP>{saJKLS?e==i z!pMk+aGFfy_ku{%me?KwlPf-BGhIS=cXpC6mfFT7;XvG#Bj*(b1N8!p#}-Hl0V^4a z8#>BI5Q&N>ac!XcZU^?>oV2N6u`st@Jn6NBV#+x-B63cylW7B!dyz91Y5?iNqDedZ|*9yuH6M406v9sA*Y8ssUK;lwBmaOfrOdBi9h?&nxX*TFpL<)GpCB5 z-Ym-@v`7UKq*kYbKh;s29pDW;t5NDO$uNqFWeM0vc3ZR!y0K7;2m09XvEY;y$ME4^FWC<825S{!+X`mO&3;K4u@Z!E?1RvIZWnlz!Pdt2YmGJ_f8bJ$;E|<~TaF~|NX+!#h8Xr>0ZTTQh zg@?3UVyx{69#EC!w6)Z|q%dI(Y5>sDXLYWP*TR(M5p3o$>ItApX)56mD7LW?nZu$c z$fj=A-Jz^zxB+H<{pQW8>d}man%vt9=U_B1dRS-(1#xul(Ii1EOidB7tyduGvQb)e zk0%-ovY0UCMVf6YZ1cz!O)>Gz1`%C8149GVh|P~0ASKyRq5QI*)|0W*V2~D0&H_AG zCWzFS6oAPs8DJFh&QvsviVz5sb`FLE@@jo7js5zN*+Py#X}GaFvoJ*!gv&abBDwA; zU?~86t9BB27yGau({O zi*jU6=8hejtJku~w5v}lCyJ(~XJH~8nhbDAMJbCH2H98RnO&i}hRJl>Jt$@?PK4zF z2^qjk70jLO@sY^`S<>hE>7M@d-h6@a=Oj0}p~{HIog-CyQpfsKn6a#`(B6?Pb*bev zOzY-tG|9<@ec7dwY%^IJ9#rU3Wp+=PYCB#viJ#&pdWJgNBWP}=qsg=2`BiVx!JJY- zv1^*uh|T;O+|I5PK9s59yW7qI3KNu&_TbQAq_6ROY$LcV@nbDqbug1}Lg;fVT^CrMsYX22Sj zO17P9UfEK)dpJ50n#LZnehMov{Cv0vw3mxw2xL@T9ocjS^(6NZ7Y(go1bv7`sBGpj zIy}yeQo#Zm%F}LP^Ez@VRIh$WNcmDJ(mVrA+`UAC?mRU0u!x;Y(him6c%P;t(J&5R z3JZaTS}djnj}X#hnY$lj>S?jWs3Z0r+2W4!zMU>Tl4Bls8rzWAAz3X(A{PZP7*skf z*db4}V>o`BS2%{kbCNTNt|9IPh9t*__K@&q|HLsN=bum#SXyDFu}P7ZCiF3&!V+Z? zyKRT?#vGDx?)Vz#3U$uCr@^@g8l8J?oO6xM&Mlkh+|Cx~E|}un&C{Iw;tc10I?K7q zbDRV9%(<=3UAn-zI}Z_FmESCOZq5?tHZFDUyyeclW2JMSI?TE69PV7=Naxy)cJ73= z&XtaF?)vr4eRiXB|F+q=aa)~Rah!9fZFBCT6P^3u>zw=24(EP;igQy>bMELfoa;Qx zxy#OR?xW{A_sve{e%I|>ve&uIS?Bt9J9qVfbNA+*``#YsYD&&6-s{{+`<&Z*zH>KT z;M_wOIrsbHnJ+x|)C_TBB=O`me^ zk$au{(S6QM_>6O_A9U`l&pG#|hn>6aADsK@7o2AHWsNO#sBfq~mo%(vFb04AklBN0bI=Y{R z(|wY@+d=={PS>?`U0+S(Omk_g@(|(vC+YrudjGg;fB!3VUz3w}jemo@=b~EY#?s#- z>G#?6+;Q~$F8cSKblu-1<$jO8ds{t?3H>`qE&Y22J@<5#y!R^lzJ)&jn*ROkgQWaE`flcGxpxQswvo!- zOlxEgef~OKd!|W!PNwUhX&u}__fz+~=jq;q=r0X{`@Gf_?MJ`iUEApQ-&D&zd+F~h z^!N9(rb|b-jAL)C2FiVvaB46ZG8V>XCg> z)9m{jb-@_!ZIZHT$H#wr?j-8trBXiXgT6TYJpbKY!Tot>o z(%;AHecz#8w&M%#X=^Y-U6G5KNlhI0n@om?H4A8)7q zg_e|?H772w)~cMzRLR&Ls2pk@zuU%l=WH2w%sH%ue>p_QyGG_E{*8V}t&Wf1yXt&f zPkLnZ8ofrZ|LFB6P!A=ga$Qs^wjW(7(Sr zSL*cl)Q8Qwzsz4La&Z~e`m*r( zCKAN&ZyDJJ+XsF_Wj?5VxL}IxMfUzb>i6HR7QOCkROd$8Qy!x_zckhN|F?C|!(8Hj zCuAS^EzOtH>!gfF=c|4g=(kOEqKE9BBYLFG8}vQK2z_Dm7r&ug(;eTR5FHwAoJ9Zr z1O5GAt$h9v&Hs)nKNs+>*C%|N(JmV|)a_I{$DKl-A8qvSxOs}`ztF1>)4lzrl)UGs z3F)V>Pn*Cas&fE;=TzuBElskQLZ7$wv!Pn__sTi6Om&X)67soRCF4G2vY$)aRlnl% zf$9y`f7WKK$A7GmGcMY9BK`aF)uQ*|-q}=--*!tMbkT3eCgh#gx6nO*t@l1RLCUSK zmiBMf_19i4 zp4anw-mk~wac%olq#nf{5qZ?pwgD=PIZ4)0+Ji#;UzMYs{+Ydnv6(&HC^QM}e#8l> z&fJ+($F?;u){Sd2|J1iLQ%-C>?exHJm)NiRm&Z@R=sx9 z^ZG?d{DX|%FCWk94gJQNu3)yxyb0kh%D_;iweSM#%TZ}mfEN_9it&k+} z=wOja`serGC~fCArfi&68z$WqpPc*{JoPvB`mNszNhzKF8QvFC@=WvzTJ71CjGQx4 ziw@L5v?gqh{i!B}gx@|9^t8@?MLr0Gq}Wo2-GR5KwQp~P@@&u$rXq{4zJB2-`J*=? z&KqIaA8JUcYe~$9i+=a#mFWELj2$f_F)PGtKY#JEfm-iiH(ly~e0j2?_;2#|EbkVC zYl9-K_+suMLxX$O=EIvN=%qfIQ1Kr-^ta?ADA!P=K~ic+!X%w^byC@ot2DD>vlVJ} zi!zH2WYzmDxlTa*rE_3fA5*-=Atj&Sb0xHYPfSi?H#Kk1G2+8e`N((L!d_2=&?PE; zJRD;WLf%2TX5Zq^(xIbGa63^^NqVG;qo^%iAYCloJw5JihY|O0122&$fYS0*Kh4%% zM!_iE>Hn*;pYhT}Y@60OAoH>8wmw*ScfcNK5%GTgQnpW!H+=R*xl$(i`Itw}9~$y@ zSf~mlB$6r)e}*ahONq#dj^0}{nKtnCmW6U2iv%Ys86Y{67p9?!KSSmVU74n>uSa8& zcX3S-b#ocng1ATDKFJx*32n?=K*JMAOFc=+a#weHEG{b$?C^{T4rfm|@-=oj(5)$>yonz=C6j>?Fxxe*wuGHy;tjoc|nX4X{`_&M9eyv?%XJIwXlI zYV6FQuY;Zk*T-vcZND%pSjIKSb-#fANSvO#4qXyzp)L%!iZ5ZJA?zv(1hfJ61#O|p z>5o`tL){1=GwZOq{Eyytt~=d=Bd7y>D7B$I)xJ}yNA3?J{qf>YDV!vuTP%iQ{4ElJ zK**sz5O7kcg^sK#KB_e=RMhj|`9+uIUB@ZAgZ`=J(}XKrJ=gWg5906kN0*i8;5wz< zf48m!OK7DsdtpqbH$%QtD0xuVN1?RG0j=xdZ}FzHK9q@1NxeIF^QEd#`}wB=$GY7J(>_{l{&SK&E0Q?(>q zO!1!+HkT#>Je-i}J{keOu@v4JrgH4+I{x%pA2OFSX2vQ!AL)nr{^9d1o3`r2VUIEA{Bj%nRpP7AkE2QQw z+8DYh8^Jv>{pH=3kXl5GPeHtDe`Krdx2B|9oni@lG8Na;t|v7ICd`{j2Atbl z=Bq_w##eI1nxA;GJ8`2a-sIr*OQAdEc~TQl*N*2+(2{ce2!<&Cbuw)X4s6wOHnU2w zm%GmQREW0BYk_a%3h(r>`g8vdwmbZYA*=2xU6wF6ro;Nh3h{GzzED;Gxzt)Snfs0b zyPm8#P54Ja!1Z&&_W22O)CR!~g3LYD!6~QeSU=I`hW9Q*|7Bx4O!wl;j_L&we3P57 zi)Q*nm!2g#^DvI>c@`Qcs zRgeniVZ8$)7PQV1nA^H`5p%k_GGa{pAk50HW|HuMPSmUuYP~&T_Nwr%sB6qT;uZel z+?{@9G6Ad}Y_LydY)_6Uke&=pBGg1#l^ecYMejH}C4wHpm3-z;ADRW~Rg8@dUoKbA z=p<&HE?Q4<#2mT(t1u=-dl}~%A5uPV5M^(;rpTjn-Z;Gt7@Qqh|1A;>k79qPZ)9hL zJ~!#70bQ=aI>TpvV9Ij+3O0Q9=+F+eBN2!TrFQ5$>9J1Xw@9*S zUjC8=vi^}en|wm*(R)hf_FR8kI?j4?H~kR;s!b8oLoEE{7hUHL5qof=a76iK8nIG*=v;2U)D?g1++%hl-Yh7;gMV7^#wv`Q$oHH|PNZFbt#i@W_ zeVT)&gQSLFYPkIlq;LaaCvk{aI_&~}KPN%N4<-vbv^Q^m(8yBNqaF4peT4H-&-pQz z)rQ#XCW%NpT~aF^(&#na8mgo){0pSH@x*jNi?|U@FQ}Tn%ZkS}W7>wBzd`g)+U|#+ zx-eJYr1&H4O?BHd^{bPcI0Q`7#mUARm7_j0uu3ZFB4p)-(d*gh=~sfDX{TqM8Ls?* zmdl*=oiz^=^=dj&DIz!@(q1GU6k(3#P0?_oUTQRoG4&VRX~CrYQWD4TxylGBP5Cnk z#}H|$_s3q3({zLXvw~sBjVf+B2Sz_#Ed;m}bPyRnm(1HbCb;6^Z3vlqx!a%hFCtV? zm;n(MKuF{735O!;-R~3Oxu~N$_(_NIwfX~puQ?wRX&C{|)*4NUV%CD4yP!HK-uBnj zx_mg@0M2*?94^pk9Xe0GQ?F_I0?Z!xKIuHU*lzM82Rp?+_o%^1t)45`bN!AI7ZX?I zlCw|GJJG7(sP(mAbX0cWPSlqwRbJHq;`cLF!GG;_40q^WqHI%TIOcW5N;4mh&4ktl zzr+dBr+Wl^EJy82KR@p0Ul0YTDel#Ft&rDF^U%QjZgX?15zc9;se1+6QdEdrYb~BE zuEt4P(gZLT>EYc!0A~H|Ge<0yuHy&I?|Wjmi&JU(K3~k)NO&d#zmCv$mF1T4bxOch zzqzC(aW?reACKo|{r86XFw#C(A^7nLcnx1yRRf*FFDp9%q%{0iZa8>NsFLeqiWtw6rQ}*QWt?r`pdNT@()KGvi}hfZFWl~JsUGnvTAXPdp7OY@DJw>72P}G zK~42CR=9)0G{H`Q6N!aFmIYYFdp3 zk0btt|4g!-2qRZ%VR~L0Oanh3jCJoU&PdiKNE;*rDv6bK9~90SPb=$1)BxPwzvC{| zjY;^VZxK6>=$(xY!dsbtZ^bS|V1JZVe-Xb7jRaQhWI4%}|ov)aTLHrco5l^?p4b;lp-j!q5@m89D_`0`0 z4ENNHZ%g^M)0)ZAAp-R|D2gnfl;-NtBJb(zA_fGQqGRj-AP;a)Yq`j_9Zv{^cwgu1 z*x3wNDf?>3oh0Pj%UjTCBO(NDAUhI2@Oz5}0XBb(k~-Fd7V*-bdXDb0 z<_NtRrT*eF8w@zcOuU(?$-T=0kG{LN5Z+w=D!wyle3fBXxUP0nG`Hrw!ujIyg0?rT zo@&nXwK0b+9gvMu8MMM&S#UCFLl-(stWKTvk8GoRzx{ibRQL$k-Xp;hd~&Z{;rLCpnh+Hxxw_6h ztN0h+LHI^_vQsMh4Iqp0z9WwO?O*u%lNS#lv%>qptD4_K%?hMERQAb{L=}bvKLQqv zVHAx-;4hzkZk`Z9OVQ;OZydm%u1Y!2-71k^vp_^AzC$25Hiv0qL(%`Fig0wdbf4I= zJq3OetNPd-P*dIHmcfXO5sIuOJr^e37ApPKf6o1nNSeud=qJG=(Sx?>Ho!-uo$Z#_ z;F?Cek^>h&WvR!@HDQY@xMCZEC`zUC62k8XO{it#KgOQ?a!i(y820!^+Z95w_cNox z)x#1nz5oH@-I0ZYiUXDQ3wq)`s5MumV1Dt=idK(b`#|chHixW2is?x+xU_QvYe6df z$Lr&zrv4)UcR`6A&!WbL;Rw7jQIXD|Kdd9^m}t3wu-AX8e$h+&DDzs4m&#<>69fwN z0-Bc?YL?djZusucag9P)$>S66n+i!uPIO#& zdf5ybW4T&ot?{T^8lUdfCw!NU^uR&_sWA*O!U>_6w^Fz^U{P71*R&&am~4);`~2{C z`g&=%<{9O^(*ETEiLm(Kbku-AbA73;S<)93>jJOZnyjUQo$0OZ`8zDQ>IcoQUqRN5 z+G~cmTL~Vz_W(mA_5o}J$APze)J3{R8Y7QQjYc(ibDrg zoiFb`As>~s&|z#c&+fE%RqeW|L4P%HLCt7Ro(b`j_jR~DHTqeBVKJ+jAsW>-Rwkor5Qw|P4izkJ{s zwz6vu;b}reX~HpKFFmdda94Y|WacKlC9vA~wPH2!%b{00%cI!-6BggfY>~L5aH@`Y z*x`6Tj4fNUoDz25@c_+Y^*vfr-fw*x&O{BIRL3O%< z@08kcuh8O(9t5O~gNmIwtWEeTgaU8Wxl~GGN>#q;cwgqpHCscG9+e#gf;#>=;97Ki!*es!#JH%n*<@g3J=%T z!3ycgBcuBzn_Cn~a`R09y1&P#aPW%QBa~ub;z8kn+C@Sg zY1_$^p;$}ne)ENE$y|d{siZ$o3Qg!ezzVsb)#h#nTtIl`D|n7i7j|2=V=PhULf^fT7+cZBy>;&Qn%CKcC!)J)8B_ogP+VOBoX83F-Y$2FsXYC z^k3{}kYQRsbqT`VqK$RYsu=ayr&b^sa*d}c#_EL`NBZ7JjmHXg!%mLKqJ!xRDRCpL zA-9&P12^hK*<@}gHDtZ4CSN$u`o7JNxi#V?ZA2 zNm1JxcUUNALl~s)LxKUz!6Q%V&SPm-%5PdxR?d6iF9+#kYHes(ljTetQN&S0!?TE} zc)arvnuC!U#!Drgr!A@$4A4KabVYo^<>oA5&WU`@|*BMMDVxT9Fr_O}*5>*%;-7gU476mM(!$}qYfx|#^ zE4CrOk7MBAuWQRP#cBU2jwE*K$Ah7G6@sMlNLa^mt>;d9HUoShISoF;d=YFJ<3|m9 zC$0$v@Bg<7kJK-8wI~?};k8jLE@z_M4z%ZXZAi;T+4lbjQnRN@Hf~8+>x7@9FFenU z4G=%z?zNn@kZv8${a|O5+55ixFoJ3DXBR4_xp&GSl~lHEhsV1>wFGv<7OiPZWyADc zr$DWodkWpLJ%_C{jX-FS@%(qU#>-px6>lAjLi4-xCQ#wob_%!6=lj>GBa(l~FG$VxgBQz{uWOq*Q>UcEZ5lxl+1~9Jp>4AN- zPUcP>SHtsMy$ngZeRJE`o1;0!>(Gj95$KdnO($Sia?&coY;Tn*#1Ve4V@piUb_)|q z35%sF+1F%)Q*Rq+M^8yqA|pbx#0WM|7Gw;zY^Ogxe7)#oWxc&!u;|^DH2#&Qp+-!k(!s&KCf{5)WSd ziiGJ29n|-~Cc3WNY+NT%eW59>L~B$0zK{zt>q?eGRehvsXEUe>)syaY|DUw6KqiwI z+seh`OMJSYX={nE2XE!Dg-t9<_h6Fl=lgrK3P%yPFoIfp@=F%IL2E%=TNkGJs&+aK zbGVA7BeHU6Mio497jV0R_nD44%wCCEtJxjuF4lzVJnd&LxPS|R@xh#Jj63V?$!sY$ zYsN9wIaJG0v!@F;3=r9tSmm}Ipf$R+*wz`1o^8Yk=0=KxuqtAiN_Cn0Ew7O^L3`Fj zKQ;eag4{QcPz$WsyZdhy=ydO=bHcWC?)F}`p#{UJ@-jD!;_%T(W3YBZ-w5<96Gtdag@15o(3WxRbKnep zlGIY0U7~~FE%MJ zQ+xiNgSH6%cV&pEel_c6WraO@xRgg|dhQz6n}ZnoxdUaVYFy4Gm-~&A)QLo9@8FcU zX;S-H7g9gjb6Wl?_8Gd3>(bWgX#7-e=Vv9BTMl79+JCrj@YT=h^~Kk33pR<3ERZws z`6<0LWP!#n&+)zysCjM)GBwOo;b~1+j)`~>?SLOy;s0zgCBu01O(ypb9e(4^Z%(4R zb9l;-?~b+MHtv~{SiHu1xuAt&_e?;|aLTiq28UU}V(XqtGpQe1^o0kIVrI z%=p2JHWpEy2YB$t`A;Pu?l&$Coo0vRRoyVjuXq%f=x>ybyVnlN)e8mulz0oxETG-< z?NwsqculY?$XMtdj=zxFfs*KU3o4yu%9*>jC!+S|j?m%04fo11S5sWTF6@DuB>7fH ze&(Pol!-k2=k!a*_|?jBOvOH9{DgV!>$-nei$zYEvaX3WW;guRcT~8fb~5~8?DqIc znH~!9Mmy3jy6UmcI{UFAnvV%!@|`}7LxsY5t`(td!oVV?YE&V+w0 ze1mCzYR?C>l~J5oidEXb2!jm&@3UF@k(@f9;avAsP^Kzb)c*Np33n3zb{9YW)zO)4 zHP5Qb0%*E-w3^S-VIC*{xH@Z6kCyVs%({SwWQ7%xW@F0KERl%YO=QX*O^&`R>^cz! zdWb?HMqFD=d){Xwmwy-*9&rC*FXgip-={al>ZlI}kD6eE1WFnvkyISSl5#RN?DK!L zXv*d!$M)PX9LnW%4#fKDCFPUM&k)@y61)HV$33Bk_F|dmb9$yW=v-5M^tD)KAEv$5 zAy|Ka>&}bALmR9|8)U@Dw#jTqE)x>S>n8Ncsj2n1_2eg}DK;p=belxtPg*glOTU?P zsqx1E&w=I0W!x4zKYXI>1&$H)^H6e7E0(rXt)8=T8r6=5M`k%LHrdMCk|ST`iRG1j zPn)ikCF|RBzRN!Bsj9Y%MgH>aNQ~;?aE0t9=MAeCgT*L9R-M1nX~1f-9dwj{q;Mb)p;-aA1<6lN>ghG z6F$^*#Y8u&n-I1Kb6<%Xl4KkWBAi>4BtG|ne>6{c`>&gD9zOo^*8%e z(|--dxZ~E$ecQMS3(H&l?~@f(CM4ON%q((<*9J`@&erEo^b&aSXFY|MReeQSP(J@0 z(8F;U^Vq+8Fn#I4H2SjEkdcp^5YBEV(-BbGV*%8uef z8@O<~rrqw5kKeKCbd6qa^>N^0wt`3x8MrpiIqR(=9AOm}*XfHL9D*kZh$=?mcJ=p7 z-`l{=`ehNCrp9fgZ@WnPQs5EAg*&wZ9KY4X4>~-Qd0mN%b`^j#l~`p{{n;hoReQVb zH!rf)IckTeZ%!9xVUVVv#O9ILkxijKWk@1zCBc$V;>_vOuI54f;n5=29DOumg>Nk< zI=#{YpjLuzo$j}4d3~Vg>pzM5NXXNmL3F&5`KCSrSy#P$b_tc_c3X1Prlvvz{K}v- zcC16#s>F*`rtt^#?|@zfF^5a-bpu61nS=8;Et9MOnuMl5 z{WJ^qk}G?mtz2Ls!oJ##Zbcupx2a@_&KvDMA7yjhlAB@zE>f?7BY(_s>BiB5mBhvh zLU%UCoO46`q0Qp`CEqlAL!!g@_H>wVbwK4)e-@s*G#xmi4s!1rCZ~7haB+mP`tCZE z-xrleBvCC+e|h+d0QxPMyQk{gH2I?(!I>1hd|B%c3Flz9dPO2$E5Vfz%kl@p5=IRfUlll%<+NRQu{z{D1}Gs1UiAidzWE{SRfs?P zHT~qw(bhAA*>$b8!GE+$#f1W5t=+utww*>b<$9lm56t!M0)859yA9F45v#rZRN6Iv z;QCtARqfua;|vLQM5YL%+3lyeXZAAII62_oL(k~|DZUO6{@AuQ-$I2pW9|Eil%WKj#f5YBVBmbIMHJ!TJ3uyrcl zJYUmL{~G&NKRF_d!ZT5!G6na2CsQdL|2oMa3rq4pb}l`gohWr|FVY4!Y+i&<`Ne{^ z)-_Dp!rVSxQA8xJs#Bw=ApmU`aPrzDMm`j*o3acP%f<$A+t)?*9Xm+ZNoqEGr`jt( zP40(Zr}9MPUEQ+KBT9dXlcesav&tr-_(nwHB|L5} z%r!nm^=YRaQu%n&K3Q`#67)>{F{w1QVHU#E77a9T8W`Eb>i0A$k>VQPg9k$wG5je= z4=|Eg*y|&$pUQa0ekMt5EA5bgO8TO&7qF$>E15{<;VdO>`5b$yZOuo9*+Y&;i9emr zQJey%`VD^m4dt0(*mxVAnr8@ zg8qg^;snq4cmo>?cY@L zF-enRn3F^x1^SJK4x}H2ghv>G9oDdy@g?Jp0;92QM(_O|_R?u>vyD5JHn)_18z@rg z8#~d@e4aD`OVSvG@n$Bo(7=cK^v{!R{DjgkM;{_;FiR3I43Z-vcg9t^=3WdkoTmq- zMx$emXy}RmA^;@@A@;_yJAsGrrwpNvpD@U)WBL#6>1chc<(_t`7$|kgu?k=>t)v5V z^0pK(7v}|W&{zY{PIqtudy|yG>PmAJWqa0-)-_P-uloo;_;x)YN)i;^3KDY1CyAN& zl3LArZmRZ6&Ow`dY{@SqWm6b=;u{G5Q#9qFZGn$^u)PJ$Dt4gaeuQ1U_Aq2Fb;3j+Jj9DU$P#kQ8Z`r!c$-#f9?&of`E zq;Ha;XTX;xZ*t$TLjP_W3CI=x6q{`(;V&HKlvmiuOqlaQ$@<#S(bir1Bdj20=`IpwQKHs`JN?Wo7toHM0c90y5=#ERMNP#e>7sG_016}7c*&Ys! z9JCv;sXbWZpH+q515_-g{rhknZ(icTl+E5KTyvskR|Dnbh0W~_egtU%b1MiPbe0>j zYXZafZ)YE85Oc6B0iJq=)5-}It7T3uBGa~^&rhGTufn@`j<3B04StNjkxvBwnSS2L|DkU6rh{LcYu2z%oJ5RMcRSkiM1<5Vvs?>OOtbcptSp*92V#+5&_@$qX zdG452_rxme+o}!p2%mVDQgR&t@0E>{lcoc&&5y$k{XbY&G_nfu9ml}L>!*ZY;C5@S z`V*Wb0zQ(imT+JbHASVPTpvnT;T`~{dp@-4;V%q!BPU%c4zuTlG9bBv1p--@2yO|q z|HugkO$m8i{G8_z3jiH5#b=?k3d;jGSdoy4$aqM(MBXe6^7&xL;^FePdKanoo1BFi zq8whwCmEpc1t)%_nD+>VT^mH~S9i}MGq(wu=0ZK9+ofMXp2OFH-2>F)*&{e|m)%$P zFLX$_h{h!mK78dH{c+9dLf=`2(LoO^Yu8D>q2H;`2;fa`JE2c6v6Fpriv+RV;qu!E-zls(q= z57vY6EbfS{#}7(HPntS1iRC;9dc?^O<2n#?Kk&fEu>Qo(5%Tq}FibLy7kD6vGPdfr zRM_3OP#45|qQjzqt;dy}~Cx;PS0Ey%eM*3-`)kw$p0X3|h)%nc$VO%+Gwt>n$LC z3`~B)l~a&qxT)O}wo!IpJb-I^1oI&GR|IEjLyySHl;L{HL)w7G{?^VXG<2V3HBe(= zEMbgc$Z26KsEw~t8%;}qTr{8R_!@{rDNU_)O>|RUos=2Hv!ibMe(IU*YZ3jibHF+8 zL67o#$6iOmJ^K12ZSrGcY|Wl>VITTfsxN`>QO>pCbNB&?Zq}ae-|u~p0h6MNPFZ)Q z$CYxU4%1m9O50lFTzQ8+CLtwfEA&!+?+|kSQ#pek{j(Ys%S+Cdn_MH?bkUaQA?C(l zD71pyXMuGVzJD?jnBlRYs=aJQjj9K0(y4F7!N#GYUid#U>pAzExH#~>MayoH4d6SA z^R@o@b~ZK=;n#i769gm(59yrd-~ZGBDtPun1-kR{6a?bAsb`cq-<7l@1mwQ#Zg1vF zZ_5hvhWZmjGW^TZ6J)LJdYQf#rI5E&p3ffFN&Y!$=V}c5UJ>WuMuyom8P`^LqAlR( zCi=iHcB5}#W)==2^z79nm31r26%_{n?u6(eCRjnYVo=~O>+ZNZrzm80;QW6@ajTea z!A@F!N*nX(E08PH&BfM=+%j;z8!OUiA202^@nVc?U3x;fjGuFYg<)h5Of)!@{|ts= zO`ttlPcTbI7A4EVv6Xh|!!u>BeA9XZ#_Bx}SK98~^TCAPbz;0cIVQ3q8x+hiTnl-A z@!t*xh|9(txb|gwtw5;tN`H730GTJx`7(#IjBOc5JT?wuK`9SH>z^IG&5XV6^pH<- zHGfE;+YhhSeyFCTGyLrJNpv1CktDNun;<$?=i`6vu+k`d8A>=P4x^Djax}h@h~#jd z5?yjH&D8Q=Gycs4Gg?FQ&9xHvh`gp#Nwp3?ME7(uD43i(_3@xt*wBT5eXM*jWumJp z%`WF|07X!p#`rW`gFs6J07vg&7NC4(EgkgPCt2|uQptS~r~iUc!^r=_n>bUatq0gx z=gy#H56k>cn47($b%hDYy}uf_Y`JKt>Gx1k$Y?R-8Z~sJyn`Ipq#RTLhJSH3^r>s; znYLIPnsBv}{sW4t$=#mpwPLJvR3nzuTxi1m@3tLJwINFC4SP?&h%8FB=lCJjd^{>4 z^dZF^JD{9enS&h{<^eq^ta9n!AtO43A$7w`qs548Fb+6Gp~*XA1}*+cMulK}KYati z`dfJ+NFijNj0dmH=KD8yk*0D zn{Bkq$2JPV-BqZcE@Fy$-EN^p4Mx6<4=TX48NlNceIw{;{%Frd0`Q6QrUKr&L&**p zo+xtKPmkhF|3~|W=Z`mkm~FLo8ywMRh;n_esoNt-2@~4Mu7a+==U$N0UZ5UyGBm0) zpLzUF!z!y1Fbcx~K5b$|&bk+~0_FOI*!v=`-I#{w0;)X&VONoWz|#2;R!F(W7t;C7 zU6HR%2t!U*zLi;Yk)K>;;dN$S!feVeE~5h#%18*h4=8wJkX^ww>lSog3$e%Gi_Yq+ z%tZsWB4QCj6!8LVma>bL`Gx{=HS57&wU@_lG2knhcE;w_i z$twdGm-7;#n00IQOvgJya3ZDoaY{YD4A-kFT0}Y2h$pZbx6<3TDlh^#e7t|6y4DuU z$-@P_X_~MUqD-fc=BPlc`lsWe4EEh=@yXa4|I6fgCRD8ZG9le+m3Go@X~$RJ`pes$ zud?Ql`#^LqzIEL98X@}@6j}ZkS?+skMK7wwAeQ>$ux6p%FR1<&iTIXr7e(BoSouOK!*M+kx~D%w)p_T=>g&( zP@xn5Dg2#rHeW)#Xfjf9zP}_n%tNl^jIDldz3w+Mw&(uRzmJ6 z7evN-d2!&DM6(fu9DqL^t2`JB@+K1=W6E+KL=cRG$L!3cl`q5Jy97S|6~r(Q!Q zHMRC*4Q3BQu$MUwu9c3;NG{j=*|4i4^}WS1FXOBhvqS`~&CK1v!OX%yGi$w$eyjG26p(6UF{-B+JjON&XN zyq&uloFTLOha_O;O+>!8*$55Vqqq}ob#H=_g_&H37Afd&*eGP5E91*x6!rV&dcvaMjX`EukQ4{`hL{&G(9YFGsy1w zbAVE(u*0_Hj_^R*TZ~hZc5W7h_=T<#;Rw?k=~BXUtF?QY4@xeB2St6zl80haAwP$j z48|jZ{95;@ua6jPO>#RqJ3&#m6|3#yN$1R8+8f7AaGqCY+*;u4um-2fEUlZ>gnfX- zFuIi9Z$k(8a}h`-7Y)xz#@;O_2t0Y$AA>3y`s5=o+KA9C)ENF^V_Cs;Ahsz;rFBqc zTyx0-cYg&_PgMbet(?B}TgSJ0+`KRQo;?%yk)%w1wzv~f1|nFFS)IIznf4EPl(fG( z-}uV+Za^054r`{|-hBV|#Zd z)Rza}v`d}wAVw;N?nDkru3CGV$BpAJ2)zlj$hTTlW43`=QKk(h``}Q5+FhSPGiL@bPMBSQ7)U(>Hl0u&5B{Ug_=nF-XK?*-bRf7)DyeM=%*c3A6%)@ z#+aOj;hu*giWY0EWMqXw^6{G(+T*Q+)eozbO}URXMQ(eHFucS(3sfE*5}u7~J;zJ| z)kWpg6NLmM9gkf7PQpGLAAX+=WENE80+4OjKc74n^VWU7HCbiC*ms@}cAyGwQp=0{ z7S4t1mTa4kt zOAN-7k)JDbVp*aUk#sD>hdMgiXWrIWe|FOR67Au7aYD>I7$0zI3}mu$$6q}-{4%Sv z+cI-6U+#7kqk*Ai^RLO9UPG}*MxIZ<+Wmo0N`wPD-(jUuR%<88@ou}veJn+yALTt6 z=JPDpWA{I2N3%x`wtik4)ZZlFQq3-tz~$vbI0I63|8e0`M#(s3wHSL?j1gH=&Kg3w zXPvFF`tQwFi4$F}ZQV&7UHuH){4uE-x5T6lxRM)Pscp%55k|-f&!z1?R;f;i^*f4e zaMg`&I7rW)L8&@V$d7B6OT;Ivrqna)gRNDyeb;sc&{gBe1*5sHlXyIkJBbM$7S|x- z`Mk&?VgPk$E`mjMrxUmO(64vH4y4r{w&z0S=3v{4L>}=2fp7E#nJDR_RR8d8!}N!L z06Ub2iR@Ws9NZ3smw(wi;N;ct_Vj$=mCkkxU}>}i!|?l&RV7qC=zhEj^ew238 z{@$}@Y{Isnp*@ZA0G9X}Dc{7NS-4RUlbWhg?uUd0XZHQ))0UWk`gyY%46nGH9~eBi zGXYw}hv_3S7p@1D$16X@3Df4*g^GvL3MM^a8oPsk_5RQ0a(-E&urUvXq*#@ zs`*3IdGE?sGqb;rc5MbOTNZj8kHldi5j%=*R@YD3+dqf))pwx*fG3cpkMgVhGcyd` zH-{#3cH4vTuDL~5#Q0{<(U`Zy79ldw)a@z$!Z>+50*&aT$+=J+fv^Ztgo%Y;3VjeS z2T-%}&bm#$H{m+$EGFdc`Yfwq=hCs`lr$ws2F;zRI6c+wA*1i)n#cW*`HaZfh}LvH zwAk6)w3$nnGij%njdM^Ho2ab{Fd`h_JZ;o$1)D{7Hc(aGdCidE(urFuKc84Qw2qqf zoR82tJfqAkd!x}Q(W#gmz>QEZX-59JZ;N;=BBgZ}_q@XmI40H9FjSE!0}hW_Id#Kn z+FD`5XJ{u?6m+D2>LmJPKYd*1Yf9FB*8cm;UmriebL0Hgt5+>Az8^VvKKbfXj#p9F z^^zsey_C2<21>iB`50!xbNNqbYOv;$)tB5nL<;y#SywnYD`1(X1yx*Dg>J134x*6} zo16HSYZdW+mQrmEL9lr-+FqzcK&iIqOd7oHauh_QQ~`Ub4)Uq!l2i~O9{k%rPk)$39Y;(Bo~}jMRd0CG>_NNi zFYM6^zYg47i602jumm4--0iuafoRx2Nw~6iG8F{*q6bXOv7V%yHA~b2>5#U$!j<^0yxBbi7rnt^JDHDUb=1aJEKN z);LxftSL6gad^e%nh*8;5bHWFyk`uJsF?hs6KuR?@YcxcNgz(vHXL=J=QvS61w!`@ zsB0nZer)*#b>=dbcT6^2XNF~2A5FWDcUVyj;am$c@dm2KSrW^)`sJ=f`lhsj%?yONq~&7YXgi&2&)< z_$EGCV34UzqPaKl}d_nB^J#}Ea_bvsO-W5`Eb zkFzn#Ijq(-aZ-h%5K)7D>{GSM^HZUijM+48EjBx#VwzsxN{eSZF7V3T3GkO9b43LG zSR?$?c@u+A_WK9&d4kZ>$@)a}32b)j2br<^o)QhHzyG3p>8>sOS%&v9*Jb;OlrQk^K?i*T3mlHf8wtB*6HQm=Oleh!%Uv9mip z)t0w=qCE@YfRUy}heN)seo0Dpawpvs>w^ERvpNmDBQgEiCI;EkIK(!xej+;dGhZ%T zI&!7KR>B93)O!Nmz^}(^F@s2%FeIpWLYlb5tNl@3ygb(v#y|xVbefo}X1!%IQm)V} zq|k-p+x%js7q*=>RPEdYv#VODk7(Dx<+_EoCeIx`BP~MQ;iOQ1z4C^d?=eJW9m-9T z2CzaPd%mUq!C;r2cqSVIaYO}Jv5{u-S)91sh8oKitJV)qU8JZ{@t+`oS}oK^*la>z z#Z9@f3Y~u;W*6wYlMf|WiWjiByOhc6aSGxjpDiUhUJ&4VZzbrx#sr8vH2^%kU$#>R5Acpw#KjJ2=*;WFS!VMv$UH(Ymw zc6&rLjb&leT12AYqdXDf%$>)7{2mA++1W5&Qs%N?pV@Jzk}a zbM4PdtP!Vc=VF>`{&dPrXSKMAJk4~3`_5MmH(rXLdwV%xn7W%a39k;-phYYIvZvgU zyC>OUZgFHN(0z!6-8`VIens%v?HLV|{HW(=n|za}@2ueo;~p-AS@qm?(JI(C6#c@~ zqwk6e9?7lN#=gg-j3_+ew!}9llAv${&q>QJVc)thW_H`puFO|hs7#Q5DGHVCQ3w0R8QfY2%YPUMn z5DJ7qG`dfdAxBsFL44mnxOFR{Kq(}Z`16EdBH^ze&!Z!x-hmrXc;ftB`B4m^X*Yj9Zq_f2&bY-E1;X-^=g*~CK zKn6WR7C7<@EQAVKy8!C_urW-O@MAANx|Nr&9wf^6d5C}AGPRbe>}1mhU8-4n3(pRc zvYTt*E8@rom+{p_B+UeVoP2~Zf$`l3#schha?|{dmj3A3Ha}KTl3I^*Rxa7%cI-$; z<|;l{P2#);%={G(T$V7(`(16&Gn7+ZD1`;@vHiKWGvO+?Cww%NA!T;oR@=EBA;lhWBoB9P_V z-GtQ5j>)-O!yWXchm_We`dHHTzqfX%Lt6*2|8kAP_gY|1XJo#6X}8$<#)4(V0Az@~ z8(cv-wl`m={#8@NyQFN$3w30*nCB}>^?7`M#xIF>30wB_j8gSh-Y4MKo_c!0j;%v{ z@RoA3*MvX8=K|lRjU?rVcW<>25>wUn)x`V^eFkkvu$u5PfhK3ugZG)W4`%&WuPB~h z@ZGU};mN&)jT=jpdnKiua|5^j@kWj`bni{k1fTy^+;EsZf{~Zj2`7}u!ZyYf~W(#Kxd^1KaOdlU?w90?k_qLIYhvScKv5RepobSa41u) zowAqUU@^)A5XtVmDBrrWwc0a;4Z7tk{X5~VB zEEL`U?j3y#yf)RI#rxsp{^!Hx(Gh+T(#jXhsm4XvqMMBnHQP)%3bcMQm6*yPK`OjX8O@hV9C<;2G=gr|~^@e7!9Sp3j%R3cg_+HM7(&m{8+vk8R(2*jkeR zamr~TY%+p9`8%vyYfzA7^&tI-D=4U2=#-dtuVo6z*TUcn^#74`?vG3;{{KInPMi`d z<&s;asN8bDPZExMrQ9zum)vtVV=5uJ<$kv!B$v6)eJYo^%;s(`GYrEpj14pUdVjwE z!t0mU<@tO)o+j+<0L9-V?L?nUA~{dm-`?1q+9Odgdrl)dDbMKB9IN?1fsr8R*!Nl1 z8U-P*vH)eZl$&{Tu5~F#W7*&x1qoQGJrORYIz7Ujs)<%5IQiBkSBm}(jN#Y@n0UO%@H2l2X>ZF;C;=H_c*wUoT%5??)%RlOxVvz{MyQ%Fsnqx?4Hrg1=RfT?d(#F(lX#cmJ6kZiPJN(`=nXUd>0HG`p6>8pZ;014EXF-6C0i1Y z6&v|yDKYGV$>izh_J+raEMywgdKny;FmrpaFg%nfcw>KuGvb2)b?C0cH)hly&3Yl@ zl2gSxdb}p8$~xn^B$<_D5X_SnnE&BFpspXO;J?UbzVoAKjFu!rGB?J$JVp zF_0!*=R{@23$|O>V8^-}!O_a|S5y-VQTcnciNyZgm_C2T)L!VUm4TU6-TP@R3%gy5t8<^Vy^dYT>RhT8m264L#AFMd$VWB$s*WP^S6l+it^G`j}v+5$Xdcs2h zXGq<7w7fGvO4erxif)i0 z)I8y<-N~6}KKT?ygAo;374oGjmrn`%&WD}&IDZ5N|KfP=yPucbpCH4Iaicplh6Jvw zJAvOg#=bq>bkeI^7g%?}-(J^UOaaR2MQ)GH2F6eS(QPoS8oZ*$(s3{>k_K`nl{3!g z8*R@Pb@mO!(7FOTCOO?oAL!d8#`H8ytR3-BqXVfQ1vN?;k`s2-9AxXd&z87s#h2Tr zhgm&}!GXJl7e>JTvp)+A1B8EJYk2J_(N*qz3l6*1_c$WHu=0FY9lS@1#tU=Oy>RJR zWWUx*ezsTWx^k8&q9l0wn6ONlrHi_7jHwXXQBAr3=%p&e(9#@|O`6|5;Y_S16u=rF z9g-`Nffu)}z6L^a_SQy=0@k7!N|2AFd?K`W=I zhne$~CYBza$9kSAZi9&2_8m(!YUSQ;7sjN;WZ&|6;2Q*g)aZxHO!; zBC=>#*--RQ%mu!(VEmROXr&u(g{})+=f&)*bFCk@n{EoM;?i zBTEbYxQUgYHt@I!VtW?nPL^)GOY_jeYa4UT2&U||#M1^p>+VXXpHY>k%M4jAaV|2q z=cgxV^lg%7pc~rdEW?pSAh7)~)u@-vT2ubLKGJkr;K=JTK-c=H13st&fv{$9dM zv2qI8%4P@1hY1^JKBzhtyh6_kg22mZ2w@BH&p#V&sFYR z9-um0zk`EcNXeS!q66;8-p62DR(#L;zQW8mJ7<^@CWH2td6K`G2)D+IxcxZ!g)a|- znij{Q27x?=^i>S}P|o=^^%%wI%2ClR+)7KM|FW;Melq+jbP*(?Qx=n%YZSj}`%E>M z%5xH4hlk?tt-a4x3LUtdQEr2?*J@V}L^=`pVAIOec`ln{ZzCQwM1U$1Tucw9F)wDk z$^W=5cDFkj#0Dcele&o~{@Lvz`yETguIhu_hT&J-vO(o$DhUy)CHgzDzwssB`$eHb zJ6Tfwfu+9fQD9$R?pDtOv^QrC3Ukv(!MxXv_L%siOW#5F&1}prO3j@gfxULB`NMuS zQ=x`o;KfdigTFzd70DY0)N%o?V=j^}us$4?ZHhhIserqjFhrh!*+Mu1<#zVQboMBgpFqWoG8jm(k&=qKn7o(w5aEo$C7M7)sFaUm zS$=!C4&fi(BS=X4dA*@KI#$`M!>_8_wu{KiQV$Rb7nT2Jd~sN{+Jq_sWoR zW*()+7b~W%2TFPf{La~(H^hOl*I`c5!Uts|%$ZZYBke+E5b1cB47mTDV;!IYX9JXS zC;VwyVm`u~U{bL@h&27BR&`i-rebDn2*WXZ2gA8Hx;l5;kwcWV^*LEtDPg5!KFQe4 zPu*dhSA`_P>l~lK9Z+AJK(>v!A5CbV~o1vj;qP3TDP?)>|k5#*aP6r63#NWj>M@_v8`Ld zq6@5L`D-fgVa$o3zCGwey!mveANEB0;z{AE&nqoT$! z!RUpehH*g7Zx`}s6J9`dV`9Ry7U?%&`zWM`dC>O80Xdi<0?GH~5p7i}J;t^N)CP zfO~KG@*Mk+2)TMz8}{UZ(_uIN*daiYZ_lLkYQP*D)JaGZ{d>vGed_J;l7f8B%3l*b ztfi^meARi5-_8Q=ADH2Ge!SYMHyy=cGIrrY?&TMRXEWA0X=6~!Q`?E`CCk2toImX+ zD#93T4i%|}ig!Y8@5B^$j#(*!0DTf!g5MQh@Td8I?7vVyULD;1nmEK&Di&~W5P>{b z#Kni#BY&#RG-90zd?DMpzxQC2H7%$H1~kRNe$Q^nJUT)}jH^6nkauqt=LfjR&i|Uh z%C8lcc}R9vJ6XW2iVnu$>?cmnFPch%hko4WfVtgi>eQavU8GI7d>MuO6IiNo`6L)XPx&)5FkotHuiI%}{%jK})^cbl7HZa1n@uX)Ax z%6+KSv68 zt}KGeDoA>JQ9U)O+W*?k-6K+Si+WwJ>FICc+Fdak48u@l&y6EC4P>iy6a-c*^JS;< z!O(MnelO@~PIOmLy-4|d&XEw4iq8eV@8CZ*Za+u(YwTm~DE_AC!_TxLZ>P6}F!^yu zHQ%2*p7nf4S{Ks<{n<-L{V#-H{K!H_m$mBDw9Dy&ShvLvUuR~|pCNOH!MG!Ia3p2X z2mft%n~zq}c^>h7H8`#F98BH&3-Ta52BTuAx<}H{h`v1GP#Mw7 z84t~jU_salz?>o9Lkm$^;g)F6b>jyuxKE0gxlUJQK14s!WM{iwKgT%ckL3t|z9M}} zJR1LfO;3xzO`&i8PqInJ*_h8w?*EqC^&aZ{rkAo5d2@B?0ASA_t$JSVP2`TuZ6G%1 zHf_M`)!|nOq59Z?d)Tr!^qgA+qs!o()}jVM3|ZmcbUbvTVxUib_l))`QpON1J8IX# zpU1{IZCWCVSGOiqkt-UdcpD8?>U{DJ__pmv)PX7cW$B*N7 zRjdN?r@DO;$eJ}>l@Jo{yqc$VM(BSiyxQc4iwgy&HAzA-kC>RLfc>3k4i=kvu!h4q z%>uuc18KIj-8|on@VW3#{lo1+cNh=Dqyh=RD{D=L{_OQ8AiFT#A(|Ta^_hgUKZl>6 zcn-7#sY>Txpq#hAG83w?zxz(tmo>b<+IejtoQ{PzJ+#JWBn;YS<0-Op)HP`FqKZqEJ%$<9N}e z^#nVo;Jq{t4b$F}3j_t}`8#P|q0czhs{2F$ zG1a?k(B3_yl{K*g#uhH;)K?i%Pms&1e|ai<-1zEtoQ{+H?Go&=abiI&>QG4YcZBy7 zx$HEALlza*X>}^h{RZFAU&!=J>7~FAf)Y4p9$Nt9@)ES)ncO1pO893^zir(huCRh4 zFINn_1w5R+`Q0;SF2qoNyZ>`Qu=(@1F04H5#wQzWEd6vCDx`WA{vIMsT-Z_iCjsz` z=WVgkwLumyCcZ%#aCu)-(C5(Pkhz45E<08Jla=R1zq0|JLyCMBV)_HMoB}>cd%?0{ zfdk&pgxS*(*%7fSb+*TQw8bOOQWefsr9m^XNnqxHSa8h319MYI;da*G&1Eou?6hcq z^astX+B?H+lYRnKTrZQJQvcO{Kyb!FYQwzM^(5Hb7%8H@%s-X1t7@i9-Q5v0~^Z4$WZqI*(p1a83Z701RTI)_U4b_$E@=a=^+yf^K$z19WX%kCMo zMBR(fiLK!!Te;Jc3nwIKIR(iOuhIZn_jKUy7oyr%UuQ$`; zB>&5vUWcrGlF3gSsDWGJ^3%?h2GeU8Z-3W?=Lg<}#a-%L#s9(`+dEa7Xqj`XU;_+V zMY$5z6DY$&<554Od=wEwra`u2C#MwuDh^2h4`b)5>QPIHG<_*eV>CnHfW3iLsHWYD z+A$H2jP$Xrb5SY1y{<+csDAO|YR4XAB0w35eSjFx9*!*sEPP)qS@-2MrcEKu{_lDES@L*~@$~V1!xIi*? z*Jew2EF>km&rH{}9k#X~T2|AkIb?tql6k;p!#E8f^$=?-RyQ7t_g(x7%`BGJ#i(HT zRzIED2i<6lK)ZFDeDbvBR%pEO(f2|-Az;+lsQx|V2cQo*$^U5HBONah;-hQ0A(s$A zxUr_`;uRGfH~Wr*PiT&(UWjn^5~Oyu^XSK9?>W6oHkSyYX71CGuIY$G!xC!3QWkkq zQFuU%RFX8J!1Rdh*Kpn*Ja~Ma_E+2ah$y$;7DNv~H@qVadw)T=TV<`XWr8l#qDCcW zYi=u-xHEE{=eOfGuld=fddC{5&92%eWefDux{9z5E|&$oLfnk^OT@^z@d4_J2PSOF zx~qR>f1|Hz4n8Op!1j}<+z2D4?u|Q@pAx1_t;Y7N!(PEQ4q%at;)9Qp+Y{j^yPgi~ z{66-@7X1E8o0e5m+u9^z#>;_wos8DuU0G2*rEq?SnEvl;f7h}TLin0AMU-B1t=8jw zEr*6kpu9f38#Vp-?fARd`&V{Jiu;OuhJ0-r;=F)}o9%@|@1!=S`AU(}=^^&1T=s&4 zxHZuDa*TAbTsPp~uE{$-zn8aVO`LW2di%y=nlx(4NgRHaY~cv}^2?1G#ajF|7-;MM zu6VoUbv1PcR&odL!he^dJzTsv)R=g>IrS$TB_K*0Da#5ty}ac!W9kysn7XTsDZ!z4 z0%xE{K+An;$z1>!>368T^k;R?(CgAGsR2}R!P!O0J=`MclCXWgK7!VT&_8-0*t<)? z{XuMyPc$J-D}%3#+vMiJy^p7=RCxGHS0c3i?ekI;K5xzS>8v&8h-T>z$Y^eG&8qbw zqamZ{S}hiENiR}YN^g#5a^7DhVM;SHYx%c-=X%!i7*eG^A}QiD z*WO9E+tumtZMZ2Io`rP~Y_*sE!Tcv5n`d~3M~2xaW1a_jKM*(m_DSYS)4h95-hs}l zNZg~TWxFEZT*d1TCdcucLN?Zv^kiNUObwu`Df5Vh`8Oy`E)fTkN+kg#;=GfB zX1BDE&_$J#XZr_nk2xW_CUi?slFDOO7rWsIOaA)j)472<7;Lg@>>9drq_c_?;SA<5 za(shFq@cYOzt~E*FjtQDgwhOoVi1(2z2$C2t1teMT12bk(>Jg*+1|H3I;OV(vt(E%Ju`* zX4>=VapeElw*M?O5FNXZG+aBo;O_*w)d->K%}Ej}Rl`@d6)NFi`H<@^Q36?Dp96Jb zop;mo`8L?zkPIv6^q%+C*w?{V>Ju%ia_aRiku9rb6DFE8?ht~giau}oA6G`E(f&z1 z5pJx<<~Nm=IE43RewKL3{u|45Vm#VhYfPr(O3?3jeuF9H7xgIy%ADSeS$C-!#SbYgEQ%;)oKqU=aWQw@)f}DbTJ=u`5 z`%8~v>};G73;l;}STR@MCf-XY>Y9}SDk=4kH)9reY8Bh*ksi3hFvl71gr+*t<5gI$ViPuXnS}eu)Ah;E7GyniUY$=UPb_nhm?$+&?SEk!txdnEIpYxoW(*+4aOEN|ffQzg;_3FKYp;)5i}< zTF>UIJZ33y5a%_2&1KC#dU%rS_2%$AUPv4~PW`*FL`B$K>6=x6@K6#f{5C-g4Q@52 zIN;LrwU`^zfY%DRrzrxU5@vemhsr#lt!I@E?bvL!xXL<;MpPR^MYQDK|Co z)c(kB`zHkpTl@BDrUNpD?p9IT+cLIX)Qi07`6+JJJ;LG758LidOb7cVqN~&bK>E+h$5|C&du{1!5sQQk$bJ} z;clgAx!+|?{r}p3CV*WD6(8he(dp zPFq8)uNbAb(Oc~Xx0M`T%w?6UfVL;{QAdo8uKOQ_lP8;b4n-OAa}qXF+kyB$e}SM? zO5WWByRQV7O1mm9`ny_&cXDSZ&(h5HWK%WOT!E$L{~8gf&0J3^&iziE9{FZ+q=N0O zP4aNqzTozeGv#p;+XuWGjf3|A;(e@V4~By7s|FfXm%m9Sekovg!|h9S8I=HZ1mX=Y zi(9@H)fR#IYbw52`n3pZn7+Y1`YGbB{k+HMRcY5SL%UvzQZp^;7iN1{9mm>xUl{sO zJ*ra=9u`UFd)S_;NVv(>fTP@xo0b5Ix<17>9fob5bZ_ClhAE$BTkJWh^^$#SdB!99 zj48Y~SO2j;Bn9UX4I<6TZ|(hBW?Apr$?vrCV z3c$_Q#Ik}DWj4Gm1!btWcAq6U+G{tUA3_;V$0=H6(Gwq%KCPhiVxKzK`|{DIX~)Za@|)Tb?IpvmUnn>n$D{Q-V2?e~nAn!hS*&c8vOp)OLQzUiqY z1REVRL)#|ruDHy!`+l7pRB_686}SFwnW-z+mR16^78={;KkkQgs1|(h$k?AjyI2Gk zKjgB2O>~@I1^1t}e8#4-OnftZk=OOsOvR8`Y)U&g4vnGf7bGYnS}B) zX~0eXuEc0_Gm$t(h>!L1!=>`g`UAqj2Q1!)v?yD9q_U)Hv=c4u^N_YVa*JVQ?LW^N zJlI@er`QPkq)w$S@wjM!@C5^{b-FCU%+%BO?yY@9la*#~&~OPuGZ#fztj66I3-yJ(Wc^k#r};*$-HVCCC3naUI3&v8 zfABOrBvQo2+`ip-t*a%@*L1{orl#`0PMRz86U=&}VH&;^nYh0JWMQjPu4o$9c!V!q zEJN#qtH#>=_cVgDmC3*bA${Yljz&B^x3LL;zCl$ga-p^3_QHh?LIgDFx%zl-pd@mFiP;6wQJ zu3ytdcY(d7V-tLig+i06|8<9Fc;L2O39|fSyNk?e6=+xW-Vd+jAf4E+_)OTK!1Q#o z`}pVlKDlA5!IgWld(k_LMTJ*jy#wojsf`&!<*{)tcyo%s#FH~9htf@2R>E4Uo8TQ< zl=}-G3vwCc;z3KYxbo0n#C$O9fhc(eRoDQOJr&Q4G?8w>_0FuNrDClLl~8Zh2K^Xp z8+5Bp_j|6NdbqU2`(tnSQiF!h9r^YcI$oY-U-#fKs`tgsDp^5NlR^={)Fk40 z+rvV&aO+@<(w+joKs}r#g*D#!QNmZ_g zx7SwaQ}OC!_Wp%#ApL~sqf?Nsm&x!iA}s`e&2KaVD4W2$MynBd8hj|fBz6LMUBAF{ zhVSxxN*DGNHYGox7)ZReZHtEYeG8Q%K~#EO0q2$_HkuMPq{DB_woE+B8^sgmzktf= zKx{G8WcTQf*vd)Z3&o>`A(=6W(l6Ps>Zj81a#agKATP#ZNDO<-oV(kbPARI^rl))Y zObvXDsKbgaxmB`P2>t@F#0Is_JoUow<@J0nK400_jQQ>xl@KM9k9&A@e@a+{d@E@) zwFXWU7N@&ftMaj)#P{jNIDCiv=(gA^llU-4o+(ed`7(A;3|^yf6_ZOO)W1d9{`*_#k`K% zFoGwic&hODMMxbtPC5F}S+xHVT;2$*Lt6@{y^&dsG5#=AZA+4u_U9wD$DtY37rq6> z`=Fa120m$&VrV764}~3yiu~B^IAX^x$SI*h-!RvN}0_?yLF~U2CvP?yR^*% znLcMmgx}Iyr7X$s8Y2QKcdilImdzzNh@G&}l=Fd5i{8Y9=f@3Qj~(hqNcVz#!%J4X zz9wpmdtDqeP0QWQddh3Mv&NeDG`p6;hz;IlN4iZer;SaRkA4eWAQVEV613&VI3y^s z{zPXU3C``c8r2-D3f*1<=qKDbjxo;Za8`Uh{~LiT`_kPec8c3!6DN-E=L%D=+9MAE z-q+eclX(ivBjiWPi7xlLs#omhLT2aQCdv9k;(;gashtK6idGh zfPagc81)@q9F?NXgnU`mT4QL=c6&cVU93Zi4K$J03T)}Jx(12)gCWFEr~`s1GG9%; zh}2G+c}tM~Y&XWX`gwOzEXq_v!Iok-R;c#;Uv`@1_2nHtfbZ+nUk)w4gtrdCl_(5v z<5g_EhCDYt?a>bn%9Dz%!h4RD4pzjlBlaYcVs;Y&FzV9uJW~@$>cdmt^ zYKmr+k~;CbMu+T`T=f<0RV}7Gm#@#(^psm~j;DuZwMiyRRd;v?n^Gpa!|u{<^II0W zO0ZgLj93CxT|HAmOw3QUePr4L$qA%v?5wbv2BmA}uCFLQOGbVw%&5mqCxtIbU`xfd z?*UXdLJ^k&uZf!l4>N}^*gxkV*oI}Itfp+&aiz!dGocU9PQs9 zwn#&QzrWDRkRn!Tdtz=%$?r_s4x8Han7_wuO0zvp!Wx36K0h{-7AQz(|1_aic8mJ7 zLQUN$;u^QolM^MsyZf=~OKEv?rt>ea&lXJcOCr8LAY*5GnJB2XSM-Fybmy(zW5azp z1Ywo^BLK7gh3tP`!-AV}(k}9nDD`RH$2(UeoTqV7VDhfFO`;XQCPwI3kfxm+?|*ZF z<~z|M`IlPBZfzpxHJk5?a%0>WLF>14lYlB>)=72jS+)yFTHVL%kiJ%+bBcYKuv>fe z8!YIKVSXtiPsSc7H4*%=&{ug3>JjN{Ub%njXxc9G9QhEAIMbZSI)6JLVLQ@7F9KH7;2$skcYhKO^(=s7^yiqYvUAW=s zHP-vDgT0lERF~Q9rXFYUF3TE)IL2QNHy?lpAKmP`M+B{Q)yRe>*HCW;4e{t;bS zT^f~^{PC)=3U_KmQ}-{iHvEkM-@x} zUMHc+;+UI-xsI)mloBW_HBG(j2CE;qw4DOF=hFR%qx$%=gCXa8^9qpnu&eaVjU9w{ zAdZ<$6$t8b(b_KY4c1LE^ZKpNAGqxnQY+{x&i{3H!84jvzB4x%y^Vnmm2G*h?x4f6 za`?-{FzJrFWkCt0gp-g%$XLU2=haC6)5lE{FDlYy9&?7EUb*yb92~Wu^7;3l+t8kq z>=Q}G@XXW{Y`n+(5SGoB)!7p%>Z~$%GFkO!(w{j3Xj^{b=bf~w|& zz}i-k;qlzmgh=a;ZKqlvp_n8^;w34p zY_{Q=ZCp~mrfhQpAwB|4hJR}Mh+*4X3i-e^dBztTmkB?C|Z*`iXo#$x5Nf<|>^z>Qflti#V>I z(2a15KYX=Ak+{sn&pMo3!E<7~v-SX&IiOKth1UKpYqhlra$(HA~~Me-&eiV`TjXKUM)Nh==DeBGTYon z0dFY{<@cT^2GCxF-~&MI$n6LL%+=}~55ve80XK)g?G9~LY?=N`OJ-BQljUy|u_XSR zScy@ETDu9Zt9d?)i+ZiXgSyblo&BcA9LDf~2oC1Fr@i2u*t_)g$R>u0fl7F~w~`d! zBZX@nv7F~WvgQe~O7<%Gtv$FyoKx5L`%SMfzGX|_&%zS2@pqB*dCNKrWsACFTjZ=76fdmh{CkwPD!MX@EZqo%W4I zGib>k*7kgj!ESSr9Ufi}I=~T%w8+#Jl;6MAn}kM!Bu9Se(|GY))DPjva~_ekVNfhr zr9FRb95Cw3PLs$=0mFDUB z4>2UA_t=_4CQ|su@`uK<&nT+Nl}j5Wm*hJ9YEwwEz8?nQSfIGKYrQG%=~}D7so18$ zK4%S%Y%koko;kM4Th3UJ`*j*rhNeYzq#cnxbI~th|KH%T-q?EJH(UZ9zvNKHjc!k0 z3s|#vE0Aos-g&gC+v!$1e;(JMd~Jyz1th^s`t^p?aNx|e4vxbqv5bslfOn?o6K@eZTTooJ;=WiFWGR|+o5eEx!7g} z;-iQ*%DUF56W6i{VH>5SsKyx)0-0#n{f|IXO9Q5P$(pB+XZhZ@Vp(e0%d$q$efn5{ zz6ATpb#t|9?UmMxM3$EC7R1vzTVmbvi;hSWH0kCT6#8AGaLt23UrwFkj-PE4YbWmH z&#)J%6iJ2~z<4y8R;9J?&3C;ut{$ni#*5GPnv53JK2VHQ@|YLg6?*-4iMa^&eidW#JBaHg|Hwx23(iFOR?2;YpZ=KI8To}L0K&p9NDE3NI3_@kTHQj$m6iY zuy{U$p!d-)_yT6^{rS3`4eQNN`d}|v`i-_B;bNKgB3T!+Ns5ejes}c(kxxNyCXVi) zGL<=~!@v3aHqf~MQXN_mqtQlicWNTw%*);#E)2liQVCxrT`MZSiwKU)DBfquKXY0Y zj&+W-=)M%F2fM-_7XMGU1T~-i&v`{44owv~p~?1>R)F6o9{@_#CXb{5=BH}Uycb{F zSV~>qO~`v}CH7I1K2TOxU*hWEBFp)!#};ZDaln}HfXw4?%%CUWiLM8E zM*?tUCt|~*s%&}d(1xR5bXNA{xIma1dah7TVxZ$dtt;$<8`FgGfLksV)8^3Q#nDaH zn6+6A>BKEF$;JmET)yX4A15?+3%uxLfdJvrOMipJ{9-0U2*M&M(P7HIKl=v+x|{!6 zP5zx68H=WfS-WN6v&uEzAN&$~4LWdTo6#Ud*jLsnlN$zGjUKj`{@(L?2u!UlwzLi4 z1KtXU+(~sWeA$8bcr2G(J471Q@(FoJ%p=Y@eCT{nlz_RVRwwt|yYS2^*@Ug0o}hWL)ftby+;9)e``vHC z&(!<)ZQ+>$Xxix*h7!anWc6QR?4Z05i)!N$uY>2Y|9|t|k(D=EwWB_LhED9b;I^x7 z-0aTvRxo#35amuoxOQ2ESrge+gWibdz+OFw#f>kin8_r?_k=p+u7{BoJ%o*!pK1J! z@)*NGHLtl%x5;z4)_RNi`4eZ%1raSvYf~*iV)cf{D6;pRkAJOAywD2H4=3m%s zwdvQbgCvSi?a>K)@MPOGS~0D~6P)ninD(K8Fwbi$R{b}E_VjN3JN~~#Rrd1(*j71I zDEdNXn$ouZP5qPlB+1qeFvTzWq;f8+(h)KzPA^LBby_l9SUHb$k5w%i}N#~9`V;; zse}D$O;Rca&V|3XW#C~jkHWfhB+%g^HPDG`VN28F zS_gG$+J{xf_P=A-Ap528XI%%6G^dIs3t8Ll+@u_6tk`#5Y7DpBe>rvzCY-w5y5Y z$lToIHG#DA3|N*})k0q(%G%w=WXX!i%8PEmc&qYpu^a_c{MlpkPkU&m=PQ5xTT|u6 za@Tlf9`ri1ebZ_4T|ZJ8ZVU2QiQFW-PtT;-qPN6auO9WJ$rZ&q#^>{&MmCO6?nVkv zt4pH{?Bge5^^nG|`lQahCp+SU4-|!w`P}Q2xsIZ+2P(C0NPo8d$a>Wg70j$uxX)gg z)Uqe)$5yWJleXXKB@X;LCmihv+9VeHp}~^w+KacJxx;n z?>JPiYWY%xbV8G8`26>Y*#|&vBW?gX%nDt$Ske=o(OTK|5C$|7R5fJ;d1vb#-aEQO z^t8VuJE0{hTb8gp(Feaa_)5b-Ki~e4I2&Xi^$t$v-`>-Lsph0*QLjks%oMb<+zlH4 z^5C=xBL@MPO{IiH>0eH=H%uhnm7adow_$t-NZZ~Kn2*TqfxjkS;9{Ky2i8v!YqO`k zkNb(YRa!#gZ-od7_#p1s&YGqQz)U~b9#6z2ZFz$)+wjXyAT(03$owXm^1FbGnD!FS zG1THk66jXr9wK{Adv+4sY3{0FPZ;V)oVpG!Ajp%Spbgq9a@2p$w#N_ouc#zKE)32r z7Xr(wNF&fwD3$}`Y5vY~O8#DbS3VPx-{ckwI=nOK&JE=w^0sC7{36hftbLm(`RW+P zml#%yUY`5<4mD;~N-rU5=aZP<^DaZjMO zj+*E_?Zm3>B1k@%Z&4Z=rqFb!ly!gT*oCC- z*HKOTyEDr#q=9495tL&#AE~oW5j1RU^@AamLj^}QXRVtDPy)2XrG|`tZ0uBV=$*Sr$lZd!bbthmxykZV`=ocw;$9w*JBPq-| z71GrqGOK4xI6V0z^_=xxD9`Hqh~y4uLcY3o{^yC46}ceNw8bXtpnh>=423ON8r!{BedX+%g22d17gv@E=3$g47|PP9jGY`HDJ%a2aX2SA-V%z!48vzO9am& zsXgmqJ`V}T)xKO{;`dV_w+7RWVafQ5PPPOE?ga9ryu;bj>FZFDCf4r6lN=&9=S5|j zz9ceX0UaiW$o}^xF-&HK#(|Y_y3V)V8Mb8sZytnzT%DX$f7YJ8>E_N3%@=F{=K6qW zjVvJC+B123H7?rrDjE;A!f=AXpoa?AA@)}~J`=yXWzvC)7x!)ou?emTo+93S#o|Jy zC=jnIB-g7tc1dogD7 zfgt;}u^Wu#qtiYI(tzq>XXM?V7@n!G+P^OnD}kD>K*ht#U9xQa@aF&}>?RfDoW4SQVT*j&9e*+uMBy zT-zEeS>FcfdjOk$kC^g{1b{r0r6W0%621R}>)_E-ZU{M>LOz-CS|pW&{<^KE*UfE8 zUE}O{Q*mZ$QHWs3?bx&aKs^eN*%2CB84(_?8tK5W;RV02wYs*}5*X#fqTgY7nnupH}mZE`@UeAa=ixDmuuG4a8arXkI1q+92!e zUK!Jfmq<4W*V(VeUXRX(3Uf++h>=~YtvHGBSB8!Ko4|q`3|ZVB(7YV=a`M-zmZm1U z*~_s-L%1Tm<*By}7Lj73i0`WX&&$sJyc#Flm;#D2IM4p9(_+({2uI1 zIxGT4%mhT4ecvPNWV9Z*fTtd1@%xT9C$cqG@4Y9*b*$|K zlOq$_LW~Lq{m7o`atbG(-D{EQgb(pc;$o)2<@8$tf&V6px>$SXFW)E)g7{-;1yR zYK+K(0UC93qb{AQ1?bEl)OMs&>Kl)*eu+RlBT?*pG{qIJkuPI7wE)%|3bE^Qpc!&Q ztAGwl8hobNHv|{=dR?`6l9(qJpQ_Y#?C@ByUX!@Tayi}NaFIip*3hEM$OMVaPLAW%FRN8Uc z#a5W?=YN~xeQn^;N7>F_y`Cpr=LOvmQ*b!G-Uc9;N1n3{ALC3K6Ie%7J&E5?;Pf4_ zE+3CH+6(pE(EZ{Y^q*o2dB=O0s5kq)0C#}u;6pGUuk`*ulFq}Q>i_-!m7)?VWv^0H zHf3{?qRe;69tX$FIQBe9LbA!;NwW8Lj(u#$-W(jx!NI}7;T-4q`FwwW!}IpKy>8ca zJ?{61y&7rnqhX+Ofs)AN01Sj!pH4Zok9<{3Yx`G5fOsEa#!3u`hdpL#f)n7b*w`GUuH%r$fNed4J&oxG?EO3c6YjQk5nHXsd>`za}vpICb4C>R45HMcu zSn11~t_|%HQqCJ##Q-a;-5jr5#~+)T6DlhXva(9tqq%6j3bJU3OcUj9Ld1j}x(QyE z$g_W?=<%6at*Mt&OED#cQ

ExjeTg0;h0TOu$mJbd>oJ1>t+zM<-uXh(7WcNr%e z#4TGqOjStok((Z2WhJoRrvl46&+7jv%NI{r0Q)8!G`qx(SI0{a5%y0C!6rCwhv zBx1RqptlsGEnb!0JVA^F)883sIsdQT_wCE#DBh28CLo`ZDeEoZ=C$;~b9*1k3N ze*SNPaR4Q!SRwHke{*->-x^J=!5z+N*q90AIoki5$es}v`{9D=;nTg{*Smy6rix%? zf7|dAn=jF^{T9NCS?v9gB$gpn{%pgS8HvV-kIq^d~G=S zyX%}uB{OTUZN2Cct-5#OMGkJ)HL*3(;K3fLVBlYP!&8*AL7~LKt|p@&ycLlpM5(P* z_!Pv(gYAR)Nnza8&iN1Oc0z2s{1j$ZQdwi|kY;_dlw4@n`p-Ec*Fq3-aopi{PnGC8 z^6o-^v%zpm&z4m{G5Q(Cp?iLf=1)%4YMikGADdb1-W9$p0nwy>-_^x2IIt$Wt@pUD zNwH8OSuF=3cveGoY;wT9Yf|9F=MXN*uxR4`o39_tj(oJ6d5?JXZCd8Eb_GweP4cf8 z@CVk9`Y=srvrUox`dMgdKa?q)yu3(3K{{X6t<*Je^?xv-aWdApi2YoDy6{1(#SwUq zx$9hzc3_!vwUwi}3U?gh{)VA~Mfm05DOe`^39s$^w(+b?rF=)AkQpr%gzcz|wva>u zWh#`st90&g&=m_a(Cef$%3}=PtI!~(Ql-&8Zy(T7D};n)!Sdj!BrCu#Qd&IJ4E~xP z2eFL9%_z|JXI|@~F*n&y(bxUEB#1q|FUjYCZ@ZS2{?B&gsEIFnMlQ%FVfkFR4?37( z3O6_DD|p^>rlhAb;!Hck&sacrKI%OjSKpy_=OSqrmgK4q5cU#DIadfYGQ(z8V6b0$ z3xaGIDw}*g{_O;mC=KEZRZ%uTM}tF8qlv>_fR33 zf;(3bv?=q$=JC7BR?`7Y=@M!xE^_qwT;$FH_r^OwrGj;x?%FJ^2U}O-XsU1y- z-so5UU-X7@h%L57vwc6Q!Y}0NtYeKiLf_= z^(FB*Q|My8a=Vn;nKkx>(D|JVgENljrit!K1@%NfX6c;c!=Gqc4|NLCRorSBm})BGg}MR-}&x zd71rQ4YWGpP0#$xi%nl*QCKjOVv-q!GML(g>NF>$gOo#;FrIo&{`h5}bB?Hd`44Us!F+N!>z* zVz+}I>s;#YYz%wbMVA9~K3ZkT*n=BX`O<<2c*(SdD$XpiiM6)2F*I39qZx3NEU)S# z*(TdH?g=PCE12Y7n$Bxy@bWRf2gA~{O7zi%K+Ta_Yv^uq-Xhk^62tlGkgA~>+qkF@Ou3y$M#l%a0e71V zip?gDxwgVHq_`URzkN;vHs{`@$J&*Zt5Gg#{`5yV-ZxJSP4)T$zU*sZSD~Hjnls(p zc4s*_rj0!ECU!bKS{Rl9O<(_HbTzN74t_oQ?!g;tT%SaA5hs{_VE=P?dt`Y$E zhozjf^v@fQTzaF;&Fn6Q^in|6&PnwnW!{;7+4+GTy8+OVyZ8qCl5W=2%uj`Gd-dV>ZWKVW&G(3&F|p;Sds6rCf`9>yI95X!6-VkS8@ zz;tn>w!0^oItARbnoDMX<=Y^? z?IxFh@iKmP|LQ&ckUOmgy^db>OwoC#Tg}zN$!!j##HzhX<@Iz!KUbuLA%L+~*?E!9 zFHmKNH%Ovz1^u#U_+il0948D{B=UOaAV98vSxn};bfm(AjC|GUgD)V~eSI~7xOhs* z*lrb)7NywIgP}UZ@H>2H(Wbwja|@ZzShk&M5!+SKSU(-U9uVePsr+64wb|k$Vw!{$ z5P_12w4&s3Ze*@hW($P(&wD>biUn=iagLA4zDCUF*Nnh+oGG!<=MvbLH#v(3T&El~ zfh8c3j*-}C9=Pn10ir)<_YEQC8328*y|ZgeH(wR>mKo)fgRo>s>g~XzpCiBP@BD!= zd>J-YFevG{H>h+uX}~yP$Y(<0gG<5FIq}n{bHBRl$*n=TRaBpHEOM3kg>%+CtjqS7 zkwBcs?v^5#&gXJlss7%Bcf-uib_ddhTMC&BZ^93aP%M7IZR;y+d0m8Kw+r}e%Xh9` zoR58$mHcgYP2*O~fouo4%BWWJX~nVSDfqOe)GK|%>pvtomZ*1eKBEl4;gUb6cHR3s^M~}GJ9}v7#=a)*oQ0=mXtNU&X z+$$$=*k(ojS?dmyWV_OFwf2yzCF(jp^hB%A=e*BfAh8ZluiM5*nmiX0c2$1!?2%wWT?J*23nr8f9};A-ln% zZH)f@mtNj%OHJv?#9zr{ZS3^wmUs2buZl-6`JV*3O{>}u@9R(v8`V1`@SXepcb{<< zZdXSiRc;jU+aM+%SizKVsJF;GB2H$>#@Bd)=3T9QnDNfD>gI3Wg)5d12yxT>%|VJ~uH}ZXcn|f}`7I3swYdu4)i#CvPcW_gf7+E~g4c_sQ0%3!ze`MY?DMnauS z>h}KN#izSsjC}z45 zjNVNsC1ngq8O8!)5*3r}f*3K@Wa3ln@};C+z$^GMq4^&Jw++W&RMV?-o|EAkO=nOf zQaNfH*h?#tzY92?Y!tH+NSgD$6`o@P7PTAn>7s(*0?`$v@!pppuI5HWjp|?ka@?D{ zsH$>MXjy?jz_jHZ`b*2QqCQhbkKCOZYDN3hsL~!Gs`V_K&39)Fdc3%ibwU4AM1aVk z{5vFok5Pn05PV8itS{l?fCL!lUHzb3XoBzPA8#%`Kvd8!Y5Qu2SJvHU5 z_5f})H>2SdmE1Vn5GH;Nunp* zBZ8}E)6wLMftl@Y=zZX!$2>k1Op64kBttCFfRU^YK1Tva0pV_9Ou4ArSCoqWyu8YK zmSnv9VFXNMxkZ2 zik|wEOFAp#E>AxEm5vZ0+Q0JEYuk~u7XfviKauu?K>Y6~!_7MQP=?P&;KsTg<SX%Gu^mjq>$}9 zwrnv{3V-C@ico>YmLgmgl)L^#i+&uwyY)MnXEd>53s|} zFEjt;3}0Tqw+ZmQm;}BObloEx!?9}J)%|9{+6soKRvB~+X-h8dgY0j~eOd!e1^9!_D7fxuifNrlD`}q^!CmJQRm~~W z_j+dJHu;Me?68HtUuo;VY_Y(vAX*;gRd1=q(QHjF+Nvj6>$W!fz2PA7VXtDw5I~@Z z`zN3zIkW1KPAUiJI)^8xt0QJa9fFF5=}<_x!6)ZU{aw{cI))Q3XU4`}r)*aUb%}S5mUuXJ4 z=;LAz8R^%@f;#?P(I%rgf4!k^`=%kV zL!|tdM1nfF6Q(PV}H_g695T`g~iCdPK$6 z<|nKJO6KsumYR2&KDiSK$`V?Itg%yf8WhynrJ@-y01T|AOzm(%yl3Vs#dzrAdsHuu zRr1z_L`*Sx6^S*xoAb617k?Mxa2;3K~lw4VVNcRWB<*5Dn^b|dAR~IW8(NNRbZ~){^JZ^lFjT^D4GE|=NUpRL>psdJc zxTBs*#%O!C?$7EsZ-pFZk=S(13ZKMe8BM(W{l9Np7fO+;(CvR}oWt#N-|PGS*`{^Y zM&dv-B$4{I!f^8EwsOYiFZIsz=lE}XDBY@911)t{)xynl@^@|zu@;}JE zWZEwT?)>_bWhyyTNZN8cv~c4I7b7%j_QZ|yrli-or|qKggHO)Evl3f(ctsGsiP$#3litJ2M| z&G{pI2i3b1OGuxQw(ya>^)k|5Z*wN_aggUfVJn|d?-yRreHjt|5NVAD_$nd0{qws= zTaSL)hs0c{CK0BWb>Q!uM){4N%-G~Vlf>txS%{SLlllI7ip&qZ&$<0PqUB{1RoYr1 zd1G#2yOkPAZJ1&kZ@kqoECiG6(#mQGS$H&hu&a3T#I>L$djre3P(Ir4bb*{!&K7aP zRr~1s1caqH8dP_49Q`v8IaHA>(VXU$yqp2QSnW*bFjx0Wf8}MrE;8!Y+!rrqoP8F< zW$#9!!`w5zFAHY%u7n2!&psZMdGsQsm-1o{YMx6vR9)V4N|>obKS^w%>Lt!TxUb2bhCAZmwGFWFNk zM!WaW%y%VM{akab9G4TJPw9tu#I@}>qZ-ZD(hM7b^ctSiAzI~(>ArR23E-sbNJg#$ z)SDUE_#QUn%saC--9sS#YwoufUdejv`wdk_TM5h5;Ek3fDIV+L7^%a#X!;@SqXUKd z1`v5ZyJ%5AjMu1$mm)_r)9;OS*E%Ja-pj(?x;(EB|6Dpc%`;n2ENNW3#K2O2NgWC! zRzzq(?xa=}NGUd6ps%e(GXJ1lL2gi7dpa^})!!jJu6Fv71^ezHVQwXk6 z8N-KbZ?S=vHmQzP-djC(-|M+FQl>d*5Tb;k-!mQOkCY zUd+g`W>PxM$Ss42?|Gt$)Tt_}0*_V<|6+D7$sxUblJiQo&*w*t)LfqsQPtxY^K;)`s|T z2BHeU=OUmPxXqs6DzJ0UCv`V*Kt2q2%%-9jm0)pt=Tvluycpc|Kg^d>1W!P3iwq_ySpxDoap#s#Pu|>m zX7(!$Vm~>_UEP23ezWq%&%c!-U3%JN3}4aYisV6qX_as>+G3f)ypdVjZ0%cQQkz;e#*C;pMpVZ-RgQw3X;}O zgsK@0W}hkv`(}fdNkPhB?X5FhKc;vFgEiu8>UP}fI~b)oAyZ^xU!^_FqJcG>-akF{ zXCv9BKCX&#o%+khuD0W;WXI?RZy?H08hYaPci_Y&Xx*B2OitRpslOfGI^`b;?}`fC z^cgVTo0o~1WJ+rJ0C~F2;aA}hOR0=aw6j1klM-z-fte^%w$9qM{{<1j$>+?Fg&R}) zR2XUtn_lqcZu&D1bbM@CY@9P3MmPV7Z^-tTQ3f|M|>UB z*CNXCIx?~GQG%{!L&c8v8HY{cE0wVC*j5`rej8hce4FNWp%o%zBf3->8lsl=ucUF+ z;RU>d($=(zLAw1a%hu0Sbs*!Mv$uLh4!OK74?NCKjMS%adY4{40P6Cc*F(2f<&zh= ze(d27WD|5`3!XGH99@ZWuL(%osT%AVsbLtF{@X*oSH3+_te(%mpLLJ~yce6KcDRy1 z<1YVcucc_ypkj8s@*$waW5h9Bf?a;bn|at&IW`oX`3Z}QMD1I04tUI*dgFzHAF2ZH z*mfSe`|Qcx2;wKUY}E+RW@k{*5Ap0`#uEs0+uXfGE*O=iX)-e>&BS_aqgUB#Hl#F= zp7=95L00b6EPaw1@LH;`miheDB^x^?Vkc z0253%!@ETy0AfaVWy-(xH@uD&wVb}Fjuf;_#uU|Arv4eKs;e`P>z(V7WU{pL(>uai zZPd^dEy*z+2t@*6k~sToVhS9q)|8zB!YB;Hn>J0yv7 z(IVzvb1QMT*cYMSC9+={Hn1Xkvp%I}QD@Q`drN*%si#z=KH zy&eEkc&4~ux?3>dPAOA#YbyhQHc#Dj_0HwZE>)g3B5DPS8s5q3*$jsR1B_G*y8@(5 zQq6kioz3SY2-d6jLbOGMC@o*}%PnUvukeX=vMp8CoaE-Jdi}$6HyQSlBL8##8fF~l z$l;uYNZ^0lnG^dKn-itKQBOHb>O(u!p^Ch2H^`ij{Lz-(1$m~cfnDyi)%q$PopwB~ zHJaP}b39nr1XoBO?fi7N?g<==!`BI*w)JiazvT)`tja~nSnj7pM^{n+^pO9oYKX0r0cq^H5lzMr@w*q?zO zg!;!CA)LfWN80e6QiC)#=v6QhzEQ`ZmNj$W+VkIL{8lDIbQvnJ=dCz9r6^wkeKY7T z{-%(L-fC}XIBs_BjBB3*@}zqqyI35Z1x+}34{Rrh8J;L1e@{Qz6SxTSF5Ox9@DxeK z)az;uMKSH04f?W9>kzdRLsxrw!=b;t+or0vM*IgWAyKjENRkR?WEMaC4IN+*x5R^` zV0S2OFp^Sm^6xFxHFEZ*N#%kp&pIthoe z-E}Z>@3cakMoC&PQN&wPYLO;bkFN)n=%X#>pSlp!4r|N?QIYu8xWd+y@R%zdI!BWC zh0ni~AxuSq_7e~{6qh`azod!uOSUUisbm)8$F?($04DWsrLNO(XR0S?(9$4NHzP#sHJ`0n;wy_ZcZmQ$P`kC^`>9`Rxh(3r^sZ> zehH%3?7Hm?zgAp(OF6%$zbeajFEK z;E1R@0uK^?piBT$EX@W0i=9a*Ht#S1vA^Oy{!RNK7NgQN+MC8Z_)v2GPL9-EXpK*u zWfr$+kLR@`LCen_ewRD>Cwge@+x-R!p=z=Av@nEpTk9vdft(%%=o4~&@tpXH)7mhS`HUmFNo>6&CzQ;{mosmXV%Gu}*;q^;1MEzQkeNj5!eA zye;=1ktVyjr?&?d$6H6e)om&6yuzSfP``DH^#YcF8JFq`Z2JAd?w+l4I{a||V%Ce$ z)eTe5zlV92^A?_+|1wUp(p!@b0W9@&i-QVsw?r8hrP?-3`L{&RCLFp=(~&|+A}`)U z?vmL9D&%cZR(G(Hx7yC#O7J(~Gqv^@#S9AUnZQBtkPJ4?NY2oK)6A(^{7mtsc4^Gb4qUCWgBwQ)BwcCSC4NEj%VE|7j|H<%-M5_kDP zADjf;qahB&(;2v0P;^YGeL&g&t)bB6L7#=2UXEf5@gMwdYEtuJQMbA2k7&(eGA%vB zH7h#2qcv>Bhbw=d(=Tx*F#3CDrszxqxm=K~XZ}LVBisMdw9U)MH9Ijt5?#`bF2585ARL#kY9z5p4)9o+%8CF=gL`kQ9l7I*kCow(JOdN5r^2yBiRE8MtqS`0tf z2VkxI;)Zqg@o%_{IlO^&s+Tmv<%kb#)Z>S(|Al@k(iw3vq#{SpPQQi^x+2eVG1-QB zG|Gbw6aMAT)i@k884XWV!%Kvowxx|Az)aedz{HiDp}~l9=0W*I3Gl+_FGIwl&p6Fy zw1BZ-qF0gaZ3gLzv4dg_W=s|wIl!{AvKW5G`c0vd&t9bV^u7AoGkC?1(LkR@b2T=zz$)HW(mK) za}P#I@w9O??P038?s|23?pOqTMy*uJ@)hYwf7=3v_667un zgo=V!Tdbi8(iI|BP`%iV2WipdnoBAr+Qg-?VkZ70EX<;+*I>V;zHiZhj#!s-EmNNpc5$*q%)VELECPN)^wR zHT&n4F47VYxc(?|l|1Sr1l?{6O82~QUqmYR+AqGDCQk*G-dhOY@ZVpSpjJatQuh>- zUB;fIpbku{1CxZFTR=#Iid{L(^c_^sw+(0&9fn6ILR*lSg3ZL3YNNjwSanu-hbRG?nh0 z7W2|;Nq^G( zz{#zYJuAN;OnU<>_PLL*e`~`Mf@m}jrA?D$=@a&I<)S%qSW(OVbJf7t17)H#N zZ0JL)>)v#A5_0q3MX7!7ZP_O11{TK6C=F>qBgW+7dqU24ItW0Ooda zp&N0^6|lku5q*3!Y%*bOb0mo5ml_z*}oQxM~}$L7Tke2;u)^qkTAj_=?vWZOc7=?%%^7)7Z9XdP3EAbW!BHz6p+4v`J!J z$PYk<+d^GoWnKwCfH2OrM$ShE&ks)`_8I~g`jMOJ0R>wT<|PpdD6gc|m5aEP(fWHh zj)aE_@3m)BYin74lhrz_fV~WN27{mR8cr*nW(W5i?mh;KZ1{2!(@4Z0(P;UA@G4*) zgEY`dA9!g}y2i2#{BoeBxG9V<{`(zhZjx;OA(ERm2)Oy`U&{e#@G&*b+HcX6)5_nX zrK(erz`M&dl)8#)zjF>WOYe>|HS>VJowwX%K*Q5*_VpEJgH~Mtd>fLb4rd2en1Y%n z^gj%4xhJk|776{yo}6+ncPKEOJ?AQwWn0k$ikOM4Ar2MJ1KTnXLCJ>M4JE2S!A}C> zwFhP!ehAT=b}eTh+xfv4Zo&K(uN7%wnv9=S!$~{A7CBzslu)vSV@o6t?Ta7%62JiD zU0RVcMO`U}m~U9y7D@3#_H5o9@tuM>%BKGfdJ55csj}r-Me0n@Qz0(i)lg5Ev9M#J z$*G)mdZ_DKyLT7=);H>i!EZ3rq7|Qb#G;rn~(H+hQnV~@DSk=)Y;tYXD&5?o4x@+C+-VTnsx;u<6;71V_;6D z^vg@~X&NQ3z%#!i409fyb4e_BCEtym<6b+E%i?6ntX4z?l$(yQqa%@Z`bIH|glEic zf%EO|T9#=R5OSfzyTcPs(YO0Mw8!8cm^X}c0pjG`b$E`Ymi#+ZkR6|Ps!n(OcXAP%+dOzUH0`=19_l>vAhkyV7ddAvb$G91Psit==v zQCb`L{?E5f^E9c>zs;WfuI-Vb(g4cn!Lsy(oZJ|`X0Jn{3$7bpKcvcDIqpwk{ffB; zHBGOBebnwcQ-a!EK&uWf6glrOfquc(7Gr#vY0I5cQgN^tEAFJJEex&l@M)){gH*euJ71EfYJM%GYj4O2rPF}nEpT12=!Qoo*dgD zB8?vRi8>Yyr~Id~uC(wxrrRF~>6w}L7m5{;nH&rM=uD1X&J_c@nIc@ygBiYjmc*Uz z|Kfd2YxK|bFR7&=U(Qpvli`jl;Z{<$w>h}0JTY;6^!(DNY6@;=3bWVR^g!R-2W1e<}`olf=V* z9~a=F#BQ{FMhk~TJ8LQdi{%U`ESY00xG;Yl`GtP(84LNf{G;_RbB}GslTqSKz}v?| zThEb0!bwonWy;6P&WL#a-bq@~*sMZN=5>7+~XRqIX+4b zGaux|n8twgA|!soqHOkhQT_v@l;a0EnA_{QMM<`DNqxS*T=@x~+75nx@6jLV^8c|; zv@~Je?6$GKjyQQ1?;ZA3FnRfR)EN^>=443KLhjR-eTe>sMBh@F4^N9n9Yp;fH~HWF zlSfGE?GQ+aZ|Eb{Z}iu37K@wAYg1;1{Gc3D=9r+7vo7g&OzsHt1Fgj3>(q!hh3oUA z>Pg5vIgoNJy~Rrum9&>-0RrF6g0kqIR~uNzy)rX>g1E)sJ=Ib^v<6>o=zoC&W&Xm> zxHo2r1&mG%(Cn04DyS0|LKg<8zKio&Jxcb#}F!FT>(=$h=C(*XoDOONFnv(MuIfc*d zB_aCGxvmY{oih6{&vO!UQZ*mhv&A-kzW(XElL%QCK=B(FM}CGjvB35$$@Si?R!jLM z2{$c2UTdQ7q?n2YwPK>@kluU@1u$p2-65B{V8|vFfm=Ic+JYlu-dy`99>Oq_a6xZr zb&WdL*Fd?}fged5z;|2{e7F}>Q74;*ML8u|G%PLbhWM%2j69uO?fTpL6@3r!D8n(| zJ#~}M$)b#7(}j29#pxrkz~yW0zL`N2b*`%%3CunhK&Ag}Y;eBpR_a*XXM6=`wR8y% z<3^pNkYA(&K>uZjzG{cca4Q?l9L@Ogsf=`f+8|>JpJJ|&vS$oS!CrwE&*CZC6L{v6 zEsLM*23;u)m5PjBZJ%TZ8*MLyfa961->bXMVa>5UksP|bn7x)}DKsbiIEke{_r_3f zsKhay=Y2*h5DRLU#yU;gYxF!}ey_lp1E?F0dLH9KhUC3JV)SlOtS=XrH=Z$NNSP0m z5Bi4<+2bGe-zjle88aF@Mq`!cYpYC>a}(pjd7VG^mbS~(KqrrF#39u0+RBSWv+i3z z1q*o{Bj~@;d9-ak_`b2_Q}NlFIu)1xsRJ9n&@bCm+TrntSB^C(#LxK7eZv@#&^P}@ z*~Xg0XsY@epzQbMaq`9cQ46W*4_Tc~AgyqR*1_Tz_%uH)3{h-}){d8|xl-Cbkn}uEl@sT)V{o=N+T2s?M@XVFtfnR#u!y=6}%; zj(Alm`sgUB$%Ym4(DnylIvi9*5>qgwaiKb{jG09OU~3K=sLI)R*5ymB_$vpA+7^76U5j*9a?xt)Hm8au7wgklDQU}OZ*>^Sr5r3mO9r+9 z8iQ$69to}2e3eFrt7Hb1sW~Mb-E5J9Z4zNM6>@J{M%#FT{7Nzp7AMErrAEl zCoS%ZbK;j9BgoG;xvv?F@g3_bw8RsXTaeN2{wtDu{xdTHOEv1k@r!;UR@d9;iylfl zt!%`|S;qC0hFqMo${BOCypg#+KR>CESs8g=|DWfM+;sS{7YF8sOvk&Zts6bOvy9x( z(DRs7`AJk>wngv1@@Kr#5|YgDq=<5;x7?--fM2w?VIN$qZkVm!zViXM0ICf*ati20 z!StPpVn@Nv6V`?c7lsV@7d2dc`(E!eIA4M8ulcVr%`0h`c3y4tY7HmUB(BQzf(^JU zsc4Y5D3Al2Ymta0zrcohN-R;T{BD}1BDM3I>1UWo^3cCK{P|86nLd~DMsTh%jDZdD zB=n^t@=uREWGVyakWkHM7rVp}`>QvH+OT(X@MC@yf3u5vl$9ok@SK%b$HvvtIY!v2;V9O8vdL=T7=tG()LRhkS!EA_c=I53P~T zmY0U^>3G86f9YWXgg#aaE-Mv>GiS0|{@Ef}iN9T$C#-ueL_;M!({l(D4&EP`CPd1w zwv=gLhHZPBVcH|CPFJ|`K4tyj4veT2ZTWKc$U;hdpxIMft)tb0fYP?wfDReP+8CJ+ z6}r+lSo7Ffx^TGLGlQfCKg!PU%6ZWDKKj=c^CgtO%HwWw94qB5k}gia1|eqR28T;# zpRGJto94w*YV})RuyaY^<9T9;Nt`%t z|5N&=;n#_IgxAJ>q#jREyTdyQEN6Ho3?cknW47G8 zlC4=5d!iYIJ7B7xsV@^g$LqU&KYSSxQe*m!bpr+ zB?~MPaC&O&p?+`%lPvE^V-t>9Phoc9+CR?&SA%(PXa@lw;nyoBvJLYEa)VMMF$9Kh zkHc*%j>M5iDbxdg-%0~|AH^urB?PWX^?thH&;OP_0vVyx#sc<7ic$KXeh zUC>I;8u;!p*L~nYU2(<3_>}9M8;)+}#wE1Q$*(ln4Qmk z+jaxEFxkiZ!nG1vo7uZ7Cvio4hRX9JmW7SC=_k$~FJkVw|JgYBi(qd`ISTh$uMIjv zNXz371i!O9q_Bn%6Qn)|4a}aTB!3UcK?u|3Qt#OJg4Q0neB{!*<*lvr2DrX9N6lL=3Y zsYhD9)e~=0IbkMtdA$$Yczo7+DMb1>z~CyPnBTe9aJi7dt$mTBBbl~tnv!nEbs1!sYxb|o+*@aG{#K`MUMY1a4vLZI&? zB)42N$kZLov7Fd+N8@lw-uL8Ky0=QlSE9EKSg0<^#Z^z(M#w z{&D{I?4dA$72Z8N)ZQ2Gwvj7ya=;lVql{4p!nDMXY4h)ZcRXcs=ZR$DtSVv9C$;$%)qy@FA$feGZV1~k6$yVx>jNRV04cV{s+v4FU)zANSRm;jEt3Rj4&Q)Zb z(?QKX%^=OPmeNO?*vEBUXdoYyRi{e6suqc5yAM)hsb)4bm;L?;iYv_7aMGC>Fsu}= zGBcP6XL=*Gci;4|58c|f* zG!Y0x+SCfQePLi;sq1Fs-wnYFDc`|DD1~_7)Rz)Zfy@~bN$gTmgl5|eYqp9WR>te) z`#}3IWQsXvN`h(pkxEpOZ*c$_BNwny+P5fsYEv6XWwQK| zmpJbA@D1Vi#&gXcz4_ns5E*;zuZ_sbr=*wM zRA+YduAb1Hy#~Ed>@8Wf9qLl2(YKi$V>F|*r#qSBN)!f}8`PUY{yZl%G#SW70@4$E z`gQo*3b%bcr}E#ba5%I7q^@X5%4mf8;*{xY2Yv!I5VfEckHVcnczT;i%15}*Tz zHszx(UR1HzHxzErx5Ry<|55V_*#2*!0KBg4y!Xr%AZqq`bA}E%Tzr3(DmTdghazI%QwhX}Iy}d_7-@DQ&;7o+7`tK{wQ$UBjP+MnxSQk-ZO_Zyvu} ztV-IULDp4?F~cJ3!R|f>6?B43OvGD8Wd2jvMlkRLtpaT9AeyS#fU{3mzEJDD>z2TF z{8#3? zc^BjD0j{v8?%?L>>K3ww*?w)g$V59A2`*t?^RmH?vd*_{Wpo2JG1#-211s;twwc+~ z0LHJ>8eYI2_^kdG%V$cd;1a)ow#eH1^>DF`dDWXM;D4T`IhfzOiP^d`kHeS_^1V;P zU^CMzWBk$0+Qt{&e4bqn_*df#J*D=2X#vFvq6)_KJH|U?8 zh-Z}P!M_c5H+XNatl3;$(_ZGpp<*!nP?4L>T&MAxqudvHG8ngw_H6BTFnfSPT&E5m zbP8i1+)d(RGoB~nWTO2p#X`5iU(#moUk^(ktJGHTVDH=q{uy%bP0nZ@9)3U0YLI%% zG#5MQGG*jA1B`KqJEFDN^kE%wY=c#Yc(cX>y2E0PU;no8_P9Moynk~VOs#&%0lh}+)XJSEy#&3{4J#ogRT*IH|VGzAN{`Gf{T8f z(f#ihn%b^TY(ac~PsZQqtMmi3?)mxB&Q>jCJa-mZPGhv4b7$FOYvg^{0e-A}%8QyK z26KZPgW%!(@t}Xd7;f>-uB?>*f2e0s^bs@w?E_bjRUHd_UiQ~_2K5O0vH~`Hl}MYg zTf{lNW533_g0AzVE$lJ9)K}l9?+1Bs1pfryfafvJ8*ES}sjn|&Ud&Sfda|9`x**m8 z_^7&+eRor_`IO8mx3hY3w9Fy;b!VOQ!Kd-%Ig4j)&g2eQi?Gq2 zn6oo--d`#imWefWo&_Ep?Z&rgAK5oMbTvCl%)y08S>yNqO6L9fBi!2bU`5|m(r@_K zZk%j9ZpJ1!BWF1nX*Uv|W8*8n;%jZVRy2MI<$$EEpzr%`Cua%j!%y(!e7M7}uu!jZ zitas#e^NZq^e11cEMiE;{3o7Cnm!1!49HN)+c9t7n`wEcT=`kN`=ZiwpI1 z*@Jy5^*i_-x%!~j?&kWpyYdwH-sg>QuA{Br?WN*V%J`wQKcw#}e0m!yq+aSi=u-r~ z|IMVu2ErcJRqOTT<2cKm;uyU%vKCth@E@EIxfAAKmda7U_dS^lkJsOmKi$>%Aov1( zukWERQ)_Gtd005UF^1`*ayqv`#3jR0~ zI_G`nNSs!zJ;<~$9^xwA`EsiGD-$;fm!l?xa}zYxm#FDre8pFMtvT0<$V(noIoaoF z)5U-m@mxNopT>OaWquX3!|dmX=(41IcUFnnFhZ6{T7|kFDhk)_(^6lzvs0<~4)iOx zI3tKtvW)yeQsm*x6Nt7DFOmKV_E8;c49~X+L;nABiCYz9O|=5cGts+3}xyYV3`_wG6j&{Y-g(hje2( z3HJA;D#wJqz!1kMobSHhQseCnYA=2Jwlo}%9rhrDQ(-$7%*RWYijIkKIT+`Kd7<%6 zzw$8LnKu}}P1m?2fbmX_UmoT5%4IjpK6zhDvlspS@E|zE{r|K6jmLCH@cXIqo)?yPg78}|<@}eM^yK#8lnV$(dkjhPEUf<1GT;B^SEQSfj?#HTmdsD%M zD-<^%3q#zlLVF$P{5w?}FGM>X!i+ht{n)54WK9mXiTnR;b;c`IrYwFMTNm=bF(&US)c0QJ+8yrx|3`QKlLO=-^Ibhf0wda+ z->ETJaJCv)(!BiZQPrb-n=rc*z#VuyMQP7YYAgPd`pEkidZm5`pJvFLsGEg-N+Xop_UdL1_d=22u|MLtF*$req_zh=R%mers#-V2%H|!s+&y>EyhN7ra zzM)?IGL3-&9Sm*$d|O8J54LxplJ;Fb&Q-D58RpO7 zfwWhmcFFVw*{!GLcEs3bDKGlD>cwD}%Q1jw1`ZB|-lSY)0?bi!zw!-Vmz)0YV)so_ z_p95t3WB4uf+)4n4mGR?P1KHXLk^p59)^h zHrhse^K`uVGmN_?)<|v!jEVTTNm6VoAlDn2vavy*NLvWVZaXDyP5SGOGA8(f!R`d( zWn6E}!>FF}J?Sj!;Cg|7+-zOTd!;OPIp>{loTPfbb{eAw@aUw^(SAt*&kuW+pl{=N z#I$?$)r?l5v9P4-ai#UUv>~u)D1b#*$j%__|RJ28&ZNp1iJE_1n}J zbGLz3A-019JY1kP_NQxjW8vd0z#0|70t(b%A^ZbeVR9!EQV+`jag`+tjd<$cfq_+j3!J`3%NWKH8-3x5LGxe*q~nE-lpqx-RsqZ{{S zjOS#WHuU!|?)U5J1(t{%20rhGUkEICzD0a=JbzntAJZ}<`ZoXERs3P)fr6Z zYCb*qEugKxr^N;~Xol`RajNivFC+}_^6`38;qm)0#=b><1^B$j);3PkJ=g#uuIcSN zIaq4`k$$Byt&6Ytim&+kU$2$nOIl`)C!yRFbQ`g^7~=?g0N?dx8st5$-qh^jsY?NW z(N*;v@P}a>cjO|cJc6-B^Y+VW*<0@GB|J9x74RjrIi}4Dp2KF+m)le3!Teu17asno zobPCp=;x2Y{(gUj$x$eKz&j(|%YW0jSddrnH~;+cw~kWRH^sJ3pP@dlJEqOw2J-0% z4)%A?7XBbtE&Cts#F?K2ykM@Nk5hCkkTozLBHKqCG{)*!qB3l}3s_N}O}qA4Ig=+r zSN6qpV&;6ZlV{Ki?fM-_CZ|=2Zgo5y!f}J6ZoxC-TXl zZJaj|!wRwBC|f{WGv9vsv7Fh+e7LjCXS-UnXCU7Id)!&-BZR*pZ=ih$-(fsE=u>ua z{~zJzXsIV>AnbwTSGjh!P(JwE$u`GmAAS~vb@NOI93dS0X2e$j_znHY=Lz#MA>J`h zG1|Oq%P{WVUncc`1vyb?fdlk8Q!4$~oYhCR)H8Kg zi)}(358}fBKH!C^d;CMv{HyO&za-8X>*INWepH#H#U|Uz(65w_-ixhmwhgr6Vxx$x|kOj;ajU-p%4AteXEg;`^-8E^<-P;qz>@) zr_B!AQK4;|k1+2;v*FlOkT=y=hJEuXCu4lg_E!bLdG!`Yn7DoG`cfBT-oW3kox9I- zZA=V|HlUtUlBO&3`&Kv(;P&u@*`sw%G>+9xnGs^;wBAnbzS=c?4)X1^d|U(0AjS@H zhIudv2hc%(-P10sFt>Qr{6iFc$$yHg23u9|9N9P*O zKNQ-E99wPquzu^l*(PY-Um18sS`T>~=+zME1>@E!P6 z!50j%w4uL1{@RSneks>S8;k42?#QIFJoO&<4&ZF zr=Xn(^f2%x{vj@BLS$F4gWf-BxlPcI>2>D6LtB(rGA3hb3ZCQ*(3ho3yJ_p2Qaj#K z#XZdV-CGGi%Xbhv4e#V*<)y;EU8~4_`%G_t zg&&m`8R}pr@rVeIz;G&-d9*X=j|J8_Z@}jxRmU>(^OwK>L`&* zvMr2*F_$l`6kX4b8L1n%fZPUiy|_0Yr)_^G+_8qaSJF>wTGDLkAtyupK+4UKZvgA; zWp59DvA`GXPUY2*GaR&sF?6o&DeLUhI+>e^lcZkXMu_=$xu#}z7k&UfnalAfkfg8u^_#nrmeuU4_FRXF!x$FbuX#S~K>HxoiSUen8 zo;D;+zl>+-C-4V6^>n2{z?+xadVa$Ri(7~}rTz}@9-OpT3A4PufPUaSgT3R$O!Mmj zxK)^oa$3^%48|-xq=n!%+9yo`e~{N_B~1rZ)24ZwB=RQB?S&X0`~%Q;>Lx$-Xr50K zOBH5K;RSVyfNj*g#p;%q&`)^XoaMuzpYY}t_8W8JfX-J`SWX##FQ1V$|Jfq-=k{Zr z7sjX0v@$>a9W+kRbz}6rJwW`r@$Hh$jbA3e>+4jxZ$F)EZ1*^--t;s)E5Vi!dlTM8 zE-;)C8QaTmqd~{R=aU-DN9W=yvvoTqW%vyG*l#QG2ZEdl>mA?wHamdTT?1@PSQp1+ zMXxcsw~Rj@d%>&M9~1K2E>RkYaqZF|>%q_Cj5YI|u1D(Q83P0|BGkvY01r7BJvczl z`=v>vJFFk)x4d0Wg{)ob?|E(|&yW764|8;SK+`t0zD^2x%ExFwudNV05BW-*p?%+b z)K%~L_R$q4JE8y5Ypu+;26e&*ncvY4vVWz~G3d(B#!ZRF{=$BqS?ah>@Mtggr!AV8 z587E|OXZsf2NMON$ON&Xr`Eqix^LJlHMfxzShn*i8 zQ_=4)p~%;eYYB~A$T zp0B!@eFbAFz`>=^h85pErE>7+-M!5`al-Mx_a+gSN7j`5_Ud4 zPGik6eq3keComr7C3~yd;<_UL-(Ms1TV0K@)aoEhJ^P*oaIqB@MoIx6wEsV7l*fTMc&||QW>+K^JaI9-NAVJLvC&zFVT4e%l$Ia@$}c6CvCjz`aEuG5KQf2 zeon**^2q4hB|WA6vmE|4)Cj)ib4r~k@4vky>?d`2%48UMUyu7tzlif9<-?o<$iTrf zU~UlG^<~%RiLSGw^{m_5T@QFZ?4LP(9R=1Pe28ySoCX}Go)uoN zrFur?oYEf}eMcLMycledhtZB`+O=VQWmEc)=ex?7v4$WUn4S##Zx2eCjOu*-o$@rS z|3h?az@>F^7ISWCCwafEu9ssv2EkaxnL}M&myVQq+q+nBv`a^WGv5DxD~an0dDPx5 zrEcoEG48xiT2}f(|0?iVkS9Hwws-^Rd!P2U)^5@@f$t!j<9oEx`d-iSli@@QrNEnN1kgTb2UqCR?l;5qs1JdHNcHdC5?T*K5c361rFd$wxipdcGGhL z<_db4{_`czB5?JTqaDr4#C+?TaIK8Iq-#-Qc?t5x!JfbHcdSw9Dtf2FdcT^MW&@Is z;Wa^M(Tz#V$&p`oN~00)_!|A4dCM3-6z3(zONNZ^#N(RwEe8F;_v}wsm5X9egPrQw zBJq=#_liW;lb0)B=Nf8jpUOV8H+_kE^Xyi&$Tge(XBW~}X-)gFfRBJK(F zxR}4s+BJ^(?!yT>1nRDVm&BjEZ`GXeciUD7+yKM-x*2ZdW2h+IM!UDy7_M`?&?Oeu z2Y67Hd`8ObL@+kSkDOf@<`+L!pOK*%(fH>Yfxc=KR|`MtA!=BWk@D3>PBggf{= z;M?}P7bCaywkp$Ota$uJUc)egFh<|l`FAW$&44oanmoY5Ju<&^(a`Y(3#}d z8pdBOZ4K-raHRZenyxAMX3<9peqWu^jd20vp?v1soakS>QI^O!_cKZa5BASBZ`(m0732Nz8iy+-f+O@v zLfwV7DwJ3HeLKJ!+`pp;z4|kZT8yp0GO`6{ieUsiu**&-uiW3@O?v{g)w+ZH|AL(58TMn}eUvpD zNAQ@RIox_?J>d&c*FmbQ=AO_!8P@%h=iu|PZPgAsY5Fww@$)K~8=MiJDGkRR_v3xv zueJp^FSppav22AgrK!W}u6*Fmbs`(X{)TqP=@@?4ztZw8_1T4a2C2hiTpY^BkbB?< zU6_swxpmlI_!hIjUz`>M|LiUGV!kIQ!ut~BZ~nLbSWhgK_sQGkZ6uNcvn$JGz0fx3 zcdg`HKUv?qI3?qNzUK4g^lx09tW~@Ned!}f;SJa~_j!K(gC9l??)F+YVg&70XJc8I zH2#kAq=t&H9E)`l*C=0{ma}=}o=h7Czu&)u-L<2mhtx`cq38X!#&|uhi9-Dwag{ur zpQj1@dp=%pOS7rKbF6#F4EE@2@-)z*JRTKEU*YFAKV^Dk;2`XTmMAPBe}EifV~?MH zen2=z0Bu>`9Vd8*ybudC7BOwV&>!f@VFyil)_ezpk0uC=NWZ`7BDo=aJjus5$~4wF zHpO3Ie3)y*L+YHg{mPFY4!P)uZav-V#&Ju^=090O%;}INoiLJrL_{yKzzvVzt)0O8b@kZ~gmCx%98&aN#46L%4m` zY;KM$5jxdg=L~*GJ!i=O5vS})=M0m%C$2&^17DfFy4W0H zzP4#$IR4+l^m4T`-opLynEOAU)s8QAEEts7RZ)hGs5rwy{_;K zpvnFk9H#g*xU100t92g7>-~_7wMpGrA2)~N+`YFO?1&)z|9svIhqJ%vEHe5{8ye?( zK16MXH*ovdWm&PEf{qck!&&_vupe4w`y_q6X}k1>`{5*A8^GzF8Cffk#o?X4on)V2 zEPnc9K)-{$LtTK2L*@O}>slONz>0C14^@2#bg_`1UDj6K>vpiz_m^~-?)dUZz!FQ0 z{2%0%%u_*`1#;jZUlMJgzIA<0C8bZBYHT?8f-o=B`w5#Hu5FCEmCg zT&!35IbJIwFQFgK#${&Px>HYic0jQ`Lr(Z}+#;kGa2VItY%^PYe4}&A}Gi2r>Y~lkoj&XSOolp0;pJ#fSw@4m!ZI;Mi)D@B4Oq z$+YQY7*iay2KIZ?l}12z`;n(}!S6Lmlf|}M&hPZ+iK=jK^oo#&`5B&#U4Z`~RkJQ$H zR4*W5mGnp+Q!4GnU?wR8BdektR? zJcAF0eFSo|cuO!?Y4@JUB~uijzv@J@C(nYn*Kp zjzvHi7t%}m`hzck45eo-KF7z`ntd&gFIjhLW1fWiK;Pybwp}k)m~Sc8|D_Wwk2&b+ zN9qHCeCLHaS?smTJb9Zhd%=1_U3p)-3Tf{vm7jduM|`JHA9!}~@vsZ|x604*@y+Yy zIo|(+o+XAQ%zgy*7Q69}a{s@rL~O?L>o_UCh^S|73;8aq@78y6>t6TNQ`?8_P~pdu z&s*;3#{DUw8<2_iZ4u;U8-&r_S+kKrz3)x5T!pBsR>y^X1wMdd9YMQ#vf~GOSbLuz z9FE_HvApEQa8+yb58)haI=(UQRdl1kcfV435B-FF*ylaX?{~Mf*dBB5104o!-?vy} z!lli=jPfkl_w9O)?5FT;B^^YZJdCOT5h71vyoP%Qnv4aw^tQ(3zP-xqjFzfxBnne%p~mZKGQ5`U4q5Pc$CUeJ9C&nCB! zHaRE2j|P=_F%JX$&!ATXOc=idczIz@vsvQWK)Z-Z3g1@N8#TR%ulS0u`1-N0kNU14IDVAuH@kFg+O8G0h_t<%eY3TXvk+r$yqL0>4YbRL%?E8v-`Y#s z#h!a!rRn3T)5Uoo=dJd7ra_&*>lV(jhq`WVFy3R-tZ*z7#G*w$4#t3HTlxGU7*|?s zbK!>o*c7*te&O5$yUgA7EQI~;rX3sG#UbvOZ}*r#GrBqtZ>x5t8M84!e{OVma8}ah zu)TY4>&}7;i0h1g@LY*=@hoZ02?9c(mYu%%EEr1Jj>x?mQlG=MBpWSZ{l<(m4jNcd= zpYP!NOUunq_T)}M@Qud#g&)iGnjkpv0hur05n>bUsj>*#ssJ}OU+iEp&GEf^i?7^Y z9GqutBrrhy823qVxa!}2T`td`b#;EyR^nSw7s0s4&}ZFotgO4g*Gm4$y#JIN^H=)| zUxhKlKBXzU+Fsg6%oB798c5Z-05Bhi7lpn5+f) zC~5oiFKy?s)^=WL&Q^0mU!hf)XVN9W2kQ-O%~Ttjt?Okz-qf{4{0!k{QtZ9&p5f*| zag{bY7gyRk{4QxY(-f}6d}e&bSJT(>_>$sBC0}bHPqH5NU`M|OyZ=AvXv03cxwCK& zS)Y9_Z!Gt~{sY|(-XC9UaazG6Fqhtjx}P6@x7*i>EzSgVl&OT=Pdr5Eh#xB@Z~vJV z+LGT-OQj#o!*gU;i6M(;hzayU2l?jM8A9Jct6(b#oq``f3O)!=xNCvxP1BkaZ}+6_ zU!YgiJ?Hhit!)qX^X_0z$=i1&&n=B zy0L##BXkn9{jUns%FQiyQlWeVIfPMviTWC1Y<|As4O3zZkH2>d>9LN>mtHPL~sJDmPGkR2+ttR6d(JzO%^Eb~{ zVWHCeS9(Z{4%+;EyrYc6&shg~gFhzpb;1ad4=qZEfBzxAE%w(c+56ZgWaD`61P8Z; z32iGOzDnJ-y$AL&-6L@Qy*WX!mB!6NY^9pr9lm4)kAWLA6!*Xvf|sSvE(zPD+&fwFCV$-l3mDpL3N)H}ZLQ+;}(NT-s)=8p!nc z4*HDzDOi`}B}?7&4m-=c>lcaNF8W7V9pqbnoKxC}Vs1Z2%$*{EJI41!*5s0~4e{aD zoNO<@eoGtErM$1AH&^%#F(JWsLYG9_4u767o?q`1rm;si$lSh}jrpeditbub`x55Q zgD)^_NiJ4i0KQ_(qX!?9jRT{JM{0~L*l*KE7q~yYNY1f-j9;v^V{o=2pRu0!`W5PV zpieri+R>zTVSa&e<>{+P*$8vPGk;%iJ%4@E#_UWWgNNTPXf#mY=>)&Ty&t}$_ z0b)GTZvy|P{RVw;86TW_&Q{f;KV{6CWy9q;Voj1qob7)5xBK1=F=*G!{`R@Ui~SR3 zugUd-d4)U!z6!o?KW(>~TA!HTi#=Q^*LmeUVh-`_x}K){1ssmAFig{bd=LGe0f1*bn$8%p&=KL;VG4^kt0ew&r=0Obs0Ta?&wjd6zwhRD)R|{4$Ns`9uvyRk-HRqgg%FH&zNf%dm`;rKKI7KZ<)^s z`~A1d;~cYx*jS%?n&9JRry5??+-7(JKN8vyvaJ(Zg!!z`CyTEnV|d_w_)2f+*|*To z;;W?DEBdiQ(APg^1n1aJHeo)Km^1LvJpUr^B>KyD^6_EIr2T^gUYmMT~{K81VS?B8%U}n0CNfj19O+IP$mWygC=^TEEY;g)WTC z@l<8FE#Gd3wzlAZPw5Z@Z*(=BJWhFZ=8piJxlV!4UsagDYGFUdsV(&}l?L-aq--v> zNEjZV{wbw~16$<6a0eccpM0^zWG;a3{8ZR~_ocxigM;kv+^od~SypOov%jR1oFmdK z%3Gey8XsAhPo+73S@ezcs*ui-K0K|mwk`S#YzpVCFn^3s+wp8jHcaEA-uvQf&Apb# zm-KOKq~%`C+nB(w^X!(E4+q~M$1r3hun&CO?H#}FVfznr>EONn((+#4T+=vRXfr~( z-BcaOtMhisXxNv^_dp(iyh?@f-U|E5*zfS^o773x6YWUG>l(**RlPL^e#YcL7wTGt zY`$fQ{Z4v>eTcbk_#SecfM&y90y=s4uabt-FOYe2eK`Q~v}LvacPixnb5bS?-XSeC za(0pNfbaG;`n9x`(5{A=@(lf&S!ppAmL|fv;ZfJbL5>zSs2xk4@mM!y|baU_Ru6zN<@zCh7&F{a#%MF%&f&2>U56Suy z7VCw3THfcPM00GEH`aZ@?})g-_#S?Ie)x|0wn~VFKv@%Tw!Q9O80YRC6z;7oHdtxO zVq=jPJiA8X!gS~w&gn(IEq26q-oDyi zWs)gSI>CXTtbJ-6?PpzJ(Y#r{j481S3y#@(@HSXSugl6hzwgFV+B-r1?v=5R(ySPqQy z0q6(%@ZKg(^BJVez#-_NF#eu`j@p#N@y;=wjHn z50#JDTWJ$wKVrYlpY_~T-$HHGI;m}DgUBFW*D=B7(m$i1ezZp)lEHf3f?wqrM=VCT z>l%$ulDGLi#KHPl`Ib53(2p&81;Nf)^FNuLwAe_Ur%3-nfAg`qbK$u9;0>VH2Auw& z-%nmg?eW~-UyjwYO$W=r4B7!X2lDE^lQMrB+RL;ZV{)UV8oweRKfIUhBRD@#@c0jZ zEcM;x9oTPNmNlCW+Og8Ud29E6dAZrG(njWXcOLs#ZHm8A8={-5&8L_4(}WG+@@Mtc z#P}c5bL)PSCH{sVV~XcK#y)~917|-!emmpe`tyLeR~#c_FWl2YU!)a znXqT0J%64N=e(8feLI!Ncj(uYL>!kQzTzvsn!Z*h4*j1q#+U53snD`per3Ngwkho! zTij^8JZ;Qi^M`X3X?{~W9K;Kxe<*0~VD(`*a4(^e(1H80ViEI;@_e-WSI3 zJJ{<^-NE9<r_(F{Pkz(0@(6>bylVcs#ge@*& ze17D9yKyJ^cD5J0y-==St1>aXza%R*8|dG7uP@E%1oE-ce`!1tbwtds3wS(IZg~NK zlZ=s$af2Vln10zx#`}7Asq3tUFwARpzGtg^=k1xoUlIPOV_IKpm;D6~a$66XE5<4> zl#$b3-u`oH0h~v(20DkW;4v%GuR}a@9`B+t%|+boS1_*AA$m&HC0Qn+me*fgPg^5-YdFMDH;n#RXh ze64NQio|<`KhFAChiSJq-E~jG&S^NWLUwvsk?fz)<>z(Wpf#@2dteKY6#2m;v%)c& zVH0vvt)n-kM)&Xz`ZC%*`*a^81kdj_5!r(gG~55%vk97eg6h|_HNQ*Fb)`MvW80rgyWIz zS0?tE^wEKgw7%9HtE z4`kbDlQs!x4?2K;j3?`^b4tT;!~jpkp{%bqf9wa^o4rv+`4{*ae0y&YY~boD>JpaM zb5BJ)c*Y4OpMf@fJjdURGc%9lR`@JYIm#JTL9p3LrYk6nJ%;y&YhF0S0!@_|FNQVn zOw#5T@xj`+5nj8!wntdp?&+QAH+A_G`R*LG7oT5Y_2%VyMS=_HLz(8|1|C2cm2m56 z?#43q^KE#(npQzV@Ea+}MgN#s{pvqih zcpuO$%-_S77_n{vOXjKJnm$z5!nXN?h z&N}%9@2;1!IJ?u_cfWJ%7O4T7vlF@e;PALR7vL^z^8x1_+~41|5xgq*WM=FOa`GKp zBJpjfGy~IE))ikr=CwS&WaDCqH*nd&}KE1?M&ww8TrankaKfNm`6Q{Y2W zDQnI@XJCCI&lUV3t}CTJ1V;m7OSf0DK=Q9m2_vZC!h-QNeLr5${S{T6i%-qCDDpDhzw zR^{Fup|*p6Di)cK4<~Os&zf`y)zQk@fNI%X6&p4?0v-9t3WWNMH&}MXgjnM6UUbD*u zuK|1X)vq6O>Cf8;wbAIH`x#=`FrVYGHDP(#qFR}^KaDiG%|N&A2D;y`+{$vG#AodI zim&+kIbSOxFZsTwgyxr97#RL$eOUd3*{utD~x^o{2MIa)g2v#XDU@W#>ok}4^f%a&N-2* zK;H4&O3O#w9L#quw)pfI!(Q$j*jHsfd#n8l&!3o2)Vs~$VILKYn>kqF6TN#ftbg+H z4|wx*&hnJqrLsZ9+G_93LB%d2F9d)7L3gtU1YXUl6Me_q?F`<4A?!R~O^cl*`%K%! zA!QcFW?U*PGa|m_QBm{fdY;em9%(@bU5B7MyPj*lGiU0V0b{tQPJTaquHgJ2Pv%BkIcI2mmXELa zTHCJ`u`hxB2z+5^KLUD0dr8C#p>Nu*W#%i|l>UT!WS*~4SvGCfpI^_>ALN8 zy3o<0v?tSeR`*uQil0uJ9}MIfusuXB+!J*lTZ1r;qyc~oR1xPflIPso~O{ZVqm@I6-r265wz2;i@i0KH zm%d|f1FkKp6gZz$Ci6x7!#A7hH+O7cF?!(}i*FfY1!KCdM01K|&Hnbv;_&=@tGcD~ zO5wX4tDNVli2DKd?4*okezEB4*cb47z*)%j!E0VqV(X)@-cDLC_#) z|L6v_i)-Uk2cxYs^4*!GVh6R%{XJ1};h>!4gS@Illb(n2~t)dD@;G=4iz5hs>7``%Jrabl)kF_ot>sr^#<ua1)OE>hhM?ISS9c#fFk zkl(DMWAp71=nsq7X7D39Mez@NJN&QkH+Tbl58Ddb{?;l##_zG`A5~=U`F!XM#hv!5 z&jkFZd1FOiKGoR5-76d8)5i_+-GBypzgvai`PZegE;0(A(Hj5Xw-*J!u_^Z6g7t#$ zZrNVmM?Y`tYVln0H*C%aR>}VnZx;GXjOor6QU~ALzs}y_T%wQgJN4(Ka1QYea|B?% z00Z#)o2%^RV8zYiYUO3uk$FL$ykm;Ruk6)2v$eT-e~T63;?i$}x!#*C4S{vO%N z&N%4z1=PnT4gY9EPrBgG&6WGBO-`NJ?7yb^YSJO#68yMP@8x}rrVUG2tUuB_u4mMd zx0zG>YQ|0C_#uCKdsC?kF<5A`hxLiM?d-jWu~Q~V-~4<$06o`zqxMCJMGIRl<{r3A zeUcwf$+}{GN65?Q|2tiuQU6-2YXyAi<0)G&g)})?um(O=zj&@o`rFf{CcH&sqehfj(6?tBqsZiJRtprEOQ-cm}n=t(@ zi4?~Q-a4pd94)tRndpDvSk1HxKK`hs85+W~Io?SZTp0P!N50JC+ z%yVF|`5Q9_vCnTX?&=6#O9#}M%_HsSV6O+9fb8SYa(Un1V+XnGxunnw(kj?OzMwQ7 z{tBE&@Ff>$95c@Ud~csUQ}GMmVPB^`|J07gdtr=wcMkWVZe6kQ_v4H5?B~bU`XN?m zc{o0k{|;maV+ZKDTVnIq#p)W_gpUz)H0UGy z249?d^#lHu;uF4k@X#P|%QhHWZ~Gc!_4$4(lQTS$Cm5m^eJm^24F-{5n;b{|uH3A$f#M$CzX! zpNKj0LDJ}H3-uTBb2*henCvmU@w^x2bmm&X`lg%|IDs_|{;hq&d{M@w8q zZN75UlVP0yaP!`2_aJyb5rzwX^ZlUc&vbuz^L|yn4D%RojTP=m4;*Rr`uKo#*%Utb zK1|PC8;)b>=g0zn02d+iL=1+g&&BZ-Urk*r<0t%5+IW+~m?ZcOyhf&4)=^&GIz;nU zB_$RJ=tE&_LFBSIy~x%X))8`WH03|MtK(C8YHX$3)&GUxBd%JR%37eC?%&e94PfXTrTtgdpgbx^ZN(EH5C#kg0bDPFYs)Aa;>9f>lp8Y^CILS zh#5v*5aNbRF0-*Q))M!I$+hw>_S?bx7+pFz*|huyJj&eCaIACC;*(3I-}H|G&&zx! zv^%-1jo5IYA9FpK59r$MHNr>ncf@=-zirsh=D614bLHF1yrkdXUt#qjw%If5$$1Ml z7Q~bNvi1)0?IG?uVrMW%Fwe;+BrSd~-bd`F^wt9`$BfTyBYoq3pUN2T z0=&6@U27Zg<=G1{Mu2}imDzb6@;I*9rtq*<=WgCFOnwIaX-;_vtRJkK>F%AoT^)4^ zdk=lh^Cg4i8Ditn5B-a@;Rw$2+|%JZ2l)HESer_z5AwmA6u!Ql7SHL7v(lU|IeBF2 z02v#YdeebwgS}Mo_{y$9a7Vr9iIIB|<9sb`IX}1PwS3>@D^C{OAbbnyVWEuo>WtL= znuFz_9u|`i?;y@DViACLGZrS^C2T0C03K5(I5ul%Na}B6`<(cS`dSgYSKu?w!jK=n z)Ju5ydAgqWQCqYLyV&}glC(3*K^dbth4TAD7rS#wFMD@fC-H^E-h&uk&_`@pt>>8{ z(`&=l5j42ahGo1vOV_rN|C5fwzVg1T?AOygx^;VbSoZtM?nY0_l>Xv*r(WUbko7@! zL%UGeBrF&y^47LmFUGqlV=)~Q<>5MN%O$QR{fZ$IC{>vNXxj^VrhHNNMcV5!XU`Co z&6B^Gu5@;vT+?INfGgXzG1KFCC@NEz!AEGXG;Ya zus>sdJLtZ5na(xjrHHADIyP|E$!=diINkU=^lRs|H?;FVw>j+|&u)XQ4Hc{))h^FclXYiQJ_X6JKYvB|K$zgOylT`pq4Ez!By zuT=1AUvDjuM}#hjc?Nttou$3PbHe=$@PgfQJCy~ZKGX&N1?{7*15#mFU?1bR+#7H8 z{GB1Audb8+Jy$L5!d{+!$rvkrM12ErCQa0Cvf;+b#>NI4+xEt`ZQHhOZfx7m8{4*> zyy4CF-@opisp{$KnLgcpPM?~Zp3~2h)=RFZ%jc;*udGwp8p-idUp0%@2=&?i;snHV z_h0jHZs5I(9K{m${&i55)FEBNkhaUS;#!C}3h+zob?YfypVpd@$Kw zfYDx4e*STD${qSrpIoi8v0|I3zxAV=CrmQ><0pqjxAYn(E%$ouH&=F4%aZ!GKo zNSmB7)EN@|(cLY~WssHbkT z(?id{?HE}_x+>nsLK63NBmE_~-hEs_PzORQzE9MtybP?|hDOq} zKm#vJT`2gBn2#TwD92f>kfl(KIk%H_Y)-TZE5>FW-3w1p;|)kXZ~GFF?lC~o9PZv7 zfyq>dK4%4job754{N5k6{rCczhNA?pWxDLI&D|BQjaPx^MwdX;s;{SPaG8hIqt^9C z=#koyjl7TXq%mFIKgq|XIIo}!=K!i4=V?>pK?KM)%#c&wNCr845OuKUzdN6nYoTDA z;@%y{6EV1L$}_BQ(eAvG#<8V|_YLt!E4$n>IL2Pdu}nU?*Q%bIR8K7IQ8MW^WgT-! zE1-rlXDm<1mx^IfJLx?aG;d9@OfQh_$io_i6IBXtyq=Dpp{zosziy*^mnDu&aVEFn z(miNar#Swv6L(^lo$G2-G?a@ z{xPd4*+bg_TZ{0~-4eW`q*LtN?q0ZI<5+X>+(>NV7WMnN2XUc7!}>l=I#G=0L3yC^ z8&53vYfjoxdKt%>_F&ee?M>YjCuY95+LAWv`sEW~PfWM2x{P;rv{7*Bb@6vdWRKqz z?>PWj^m^%(n%VNCeF;)8%nc4}(-!HPfPQR{mLis?Jzr{<-NM^hE-DUXCW-$%#vrDyqr>)5Ng{b}3)3eVvYLAF}cdnRQ zmKaGLhP4Xa`Tnj80-162<5l+ri*06H6O*F$_>=w#!(F|_=DDeB0#As? zimT8vIfm!-%-W2IL;D5c_yzE96$x$pK35XJ-L*M)Au(pjql;QiUNdiQ+jhFME#ynP zCeAe%dM!(+ap|M{P@ydmD>sfd1ep-a|Goe*x9=Zd#utL4i}pFROr z7C`@3fXBMDL+7YmJPGPmsvE}J*eqIetk#~61bn>hY-pErY+F<8zAg6~*IJ+epItyj zk1yf%$0y3}bj3!~=pz^}(h8ON^#~@Otdr~Y7LBKXcHmefUHj;*>DA`46Cb2r%l#92 z7Q`+S4Buf(0&C9O!n7gO^Jo5PEga6rpzT|$OLax!Cyl-7_VFfr$>D()f2+`!NGrx! zIl~BSN6@p;!8uQH@al{q-`)KZXiTKjmoS{fGexVSH5W2l>YKdSbWS|bg|4*rS*JW% z4L9mGcExa+fRI=1OZAUW<qHJIPD4#$sUdsZRv^MdsNmI|T+bd-~lF1=w*i+IGl554!&o^s9`6FXTxz6jpD>GC| zx2|o+tuM1ScB6*K^mh8~As6K8UE|TMHN^Pfy+>MOulu!GH7pP+6K$Iut`7c~lh;Fl zJp5~a0M7AogLAjF3P%F(A;{5Vg9GlZ^%1 zIkdOzY`iv^B6^6(yo#tfbbgZi=$vnS~9+<=@WMSSAn}R*S z3ger~;x?T|d6{iSyPn>XdQV6_-GX}a_YtZ83cLoDLiWX<=99|k-1fa@2xa358SMyD zgwrAC>IU*)z9ZijsIoN>+}IQJkRqbwKx`8~@%VJqEI4fOUj_P1oEidM_dnSF`(@=r zyBx97)lU|A+k}aMd)&y@fG!E*azWS3*ac}c(4nG09R2JEv|ylKzZgw|ojV@Mup*p!(;|W=+F~S#*tHcIhne>fkhMwI(Hs-kaO{Pi<;X z*Ps^ytoO{AV%=qIGGEXHI5&(N+X3Of9!_s8KAOZV9-l3|H5)&+wjSb%j+YPG1t$6_ zkRwy`elJ@F+pu%L>oQo6#;(IuQr|fokLtrg$itVdsWmJPTc&h+oLn!jaF{lNMOkM= z5fipf{i?$yFz$~}paaKBnU=04NA%2b<$fEPvP6&J`oMq7yAd@6UxI!347_;Yq3mnE z@$2OH!a2GvuF32k8{4-iTqaPh`M`Ijfk-@0bj>Y zm-RHbvCOp4E*U#7`Bk{FjnVsvWDtEl&4>XhTpT`n$Al}6%Y^Li&xEbU7D$~tZpAev zPy!>~8=sxJND~=Y;KvsP;LrG&;57snPaCUO6PzQ_x6mV|ZTGK5_knt2vjR7+BX3H$ z1mJvy$wis<6 zR}w9BpSno6c1>J8y5}z?=Xi83h3g$Q_HXCbF|zF>&@rt{(CC|Z;5}X69AeLH_cvfM zY;L2sMlm&9SF?nzR}3wPe7i3x+Z`Xz<}Js3zra2DaKKA=Fu+|qk-+JC4%}K&1M|-3 z2v_b{Tp@i)plRIzw=llWo@d(ugwM}}CvQ1iVm$=lj(l(dRG)`W_p$*yAJYMON3bob zzK3pIwzxe{+DIEWwxjAOeaB_OGfQ||Yyi>#Z%LFsEaRUo&%=i!fBIxgh2a6Mm2%;A zMw65k?z~GAD38Af55?#hQU(uu{_rVMt3v=tXupKQJ-YYn-%(h6#KW;+?A3osMv+b? zQKXz`C>G>oEh-m;+^=aD;3Us{m1Stw}9LtMWsU$eAW65r$uE zt<(#z`%N1?ZXptZDf!uga(Ph6@GUP45UXrJt?q5C-0yKoBR?&urBX1cR^JY=2z*&n z`|eq5rP}w>$(>NR`Cl!S#_x(Dsmk@O zs*d5@E1+Z!aVkt(%~Kj#5D3?e6&;w2Grr-Fx3nxl`-{ad7aIvrKWqwnguz) zuOeaiidJDo18QK+cx=OoPXX!KScK#}sYNGrYH2=lDhnJ@2DN-31+7BCaNyy0(XZ4+ z9Run=)D>RJAKa1)^Q|VyrKX0`--7^5e>Z#kr5KK_#ute4h*}eX!UDZKi1L_K=}vlv z6<#e24{RzE=25kD4)?fI(G16);k!n8y!dJ%wP3H>Bt2Wz)c(%Zl#!mft2an2G$5y% zNkoxa>H_U4ddsQg2TYxlO7%ORzB^CdyEkD3XOCfLA=SwL+Ku$}g{+|}cQ!ph}wADpw-%nFY$th^R9K-7lMyQZ`pGv+> z+1Xlo^=<63VL3wAMpa*A&k5&^_U!!V@0zklnW z4^S^r^1TlFZ90y}Z->H``rk1N^EmQ7qCCD=XP~g4?h}(*aI5)*V{=-Hg?pqFeER_( zEr3S8Ff^sK4=MFXVj*oewN$^ZIJNZHbdo}Tx?lEtw$xQL3d2vd21zWO%t(b}Q&)UD z&0$lQFpsaLX}HIdifcIb*8k7ht1JFDA8gdM7xWG#7UUwn)vR`tE3t3`#7ZtL@gS90 z$cy|RD=mf9bC&4C)5*&YX{Z+D)QU?i@asmCTFBK5k)D-lCX-sIeI^0qg0CPvrq4cH zJ$yB;Q%~N+PPYlpKXhN;k-KCUj_H2)`}$V)@RdCayn0D?rJj3-ZB5U-g?o^rQ!l-# zYD^csK5M={4|&Ocbqjv+YG2cxe%N>Q^SG{lhK0R3BI?Rj02nHesLI`4OXKbTyuIuP*ZLRNM?qRI! zWM$;=4dSYAZbN6NZ)j#r!)j#6Y)EgyU}D0eug_tmuS@@Zu;|*F{7;6RR^P$F)>T;v z9s~-!IN69zHr?pItFs#{2q^d?CL~=M>Tjn;E?DZ8F6ygC(pMSd z7t!P8FQe5pQUA4muEKLob0Zc8LJq`bi_KxkNm2v3deAGd`k$sGq`uymGu&cFRRbLD#^m=g@yYD{7S)SLC!e`e^{orE;9nW{QdD3M4eng~a9sO=z ze!0cCi!;MSZ2N}q!%7E!XqIj~x7+*{rP!{_wamIb~?fq zL4;?y=g3=k!FzRKd*xtr$hGqxr^d-JJH~eOjXDB@Zu9){E!Uv|&`F80eR4P1yoS?P zX_ z@4#1~0v<8uVh|H0j?s<1^2Ymqc>>!~eYew2+P^G)zt*?W$6kC!rA>S@)3W}N3~zs; zwLR6GJ+eL3d=UX%nHlchWPNd#We|J_u10bZdGAT??qy{PxIblp&!LCgw-(`1$mEBDcrDMG;aohxnD^T+f81WzQ6U^YPY3aQ%|n%w_}HU-0WT9}zo4cizTPlC zqjBD^bH5gG3eVqNd#8N(8}Fdz>80d_^j-xs|;D<*KPAf_FLju?#rCfTsKSl24}96 z570Zk29Z3`_tca;@hUe%%7-%5aw&047bE<0R^X~FQ!0<*bB<1$>}!c2Lkj;3IlhmN zHT`{%PL|B~MOKFF>nt}%>T@_ZTZ;GD_Io#UyVl$Fcj;vhTl)LRmp}J0oAA-s{MZ58 z=bh1A&u1#J=~wjo=Q4R>;+HWaP{`Mj5$Ne_$>@Inl_hoc-Zgg66c{)b``O!fFv9Cd z4?La5m+F2fgi4(Ldg(i`^}W)&^ZnX~O7#6a(7RK$!IM%!L?H9MfQ3rzdAZTM6S5_c zy7E5MyOZ^DqX!o9xzYo7bNSNVKUez>WK*CLzdStYfp`Ob2UIeU7#xh*<~(Qn%4W zN}u)Uv0K|72H+w=2ZQ>TAsg9%>_*yqVa?bypR?iJ>uU5^&&$s6LC?!v^cdfpr>)fI znkE}r&uubJqOPZh;T>Di2VR7`9SASE)8q zKFb8(x3@ooaT2FL@1n}9NR3S0f(jW1ETmdEker}u-us#sdxIy=&5%l_$2Wa6-V_a z_0skkcqZykM}#$umN#EdVakCO?cJ+3hnn}D<#y-NL|`;rZJV4u)W*VIL()XoTgIs( z9RL%cpyPrLy+%ipMfNQFI1!Ye#H<#@#iUZQFP$wW6PRHc5 z-1?y7#it?5G0nYg6o$J;7trMJSEuRFVl(${QUXCNgnknLw9*(@pUTliSCLzt;A?VJPhN%&nPholJAMv$Na*)VK({P_xk<6JAnR2fWdxicmpS zc&}yee7J}x?~Zw^k@^1OF0G`T>aLc3>aM=sd|TZ&SVCx>BmM~5Y)&8fFZ=~_pemKnE>BENgt~u z8cwNT{KruzDRr3!K;m5-t8>J#X+~Py+&y#s=*2}_4U-?GpB*_|Uf0eN^xIoDxxccE zA@ilalf)(>l%+nH0bY70=+6C*ZM{=nZ>80oZ3lmr*rYDFzP&n%{21-o(Rd29s>^AS z0P>wgkNhGt#wu%S=)++a#;DA>6nqY^rO_{HbmQ&DO(j-%nPh>j1BJ)4z4|N+M8t3B zDQe++H+Vwi9nV2uUB2cW&GE4!SsPPI3N~MHPj;=Rb+5tT`AnnpUA#$)E6G*#>?ltK zTDUw}TY;Q7$kPBKeAXA1m{I|-Ji~WZ-#|mEro^_F3kRabdt?tOql=K9^r?7uSVMPO zOKLt%iiP`Q&_jEsdZn-OrKZSqU zz@&DHFoZs79c3mQ&%YZi?pe)%UPt6S$5o7r^et*1H#@t7b?%iX$vR}Gh{$CBNpSLT zdof}*uOF|!HSWxY{+Bi2P}8}_T<^c-tBEFzK)PuyDNlabB3yfGfcKlHrj(7#bCE=T zJ5ymHvNTd%=kO-8q}tm^86d4RB~4SaXq^FzwcmUy`>cXySnX1+=SK?YU2+v_e*^#6bh@^A$A|G zq2`*QUC<@4(=HX?wm@7Yb_X7(i)uTL&du$GjFhIP{m8>Sfg}F!#<*Li#!+nosM7rG zn4y=Nop%!^-Umbv2L~Fl=3jw-S%%6G2NH*u3Mf@;#(!>kJ26P^A3v*blfjI zt->mv>z76$hjE*?f|^0nM5YS}Yk7%n!wFV*oVsOORoGasvJrh6cLP@-K3^l#> zgJ?^2MRiNAoWUR_8ijMET$5@0`fLE}wXu%vc9&tpv}x0jgi9ngc$&gy?W>V|{-j_M zh0ed3GKrY5#>h-@&7#2l9l|=WRNsOkw_2zR6nv zt#aXSk`|hsjqBRno<+*AFRbk${ zZA{!Mn+M~K=mk&CKCx1Ut@*j9{BsD;3KYREf?)q`roX3=3AbmIBYF(W?I@LsLLC!E zddpT=Ymg}3RMmJJKs*%^j2p6Q?-MUHa75n_`T4s&uGq;mnYMB@kAzEx3^9_;5}hj@ z%eit_gS$`RX~@Jfb&87PJx_9O7Qoi*&`_=hG&i0~+!l*{oP`}AM^ewj7e}q<5GoKt zFQ-U!?U}P44Wyvvz<8>V!~2i}K%}YL%U(VmnkZ6Be5NP(0S3}H;U9=Gm<{##>4@4? zUkH9<&KuVRBJb%X&}pM1;i+$>1ZtLOpWv95|ZEVX^)bLf2YS$syq#F{86H+~YX19PeafWO~`<_9#=9 zw{kYR(Y+ltmft0DAIh&h2zL{*FPqS^3wMDrraz+2n=)ukI@&*izKElom|9IZi?2L>?P|2_ zkeq-={VT~mZQ<1*u66k5QgR`XzG7Ee4z<*xm9+;E%~eSyYx){kVsUb?x_Zud-#ozO z3OjW*2H2T4$n#b@Q5S3?cU5>xG;k()LwZwx4;N8%LKSxtNX#T4QmzKh{OYC7YB*tP^Y9&*^z7t>bs9zIwzC6Fb}n& z1-(h#?~mc!XJY;Kc}62tZzLk9kiD~F*l$n9dRs%v+O<+{st?{eka+!I8DR)7f-&Z% zsTj-%yC!Qj_A??4GTE2i*T02ADtZrRk;yZ+By;RE= z{{}lPE)-Z})oblN%)U@;VFe5oWn85%+g+jW;u(dY(@zWy!)(*z2*N?Zy39e^VwsmN z_7D3lb6QKl~1aFkswAA!*q!1 z5e)mKfx`U>(u>Ry45OB$N~21s*m!;TOC7tjqBL2{s|laj zCcLdYGOP>lA3#6lyO_QTYEcgTiu9cs4>!e>DS)CCiQ!iszw=YMA4Bucnx8kKXnrG z$augK%^sx>6ffFEt?xA84wx4#`+1?FZ{ZvO9j~Fe@&?rAJvpp~oK*PXgV26IajX}Xb zdqv0LBpeekw}|~zWLPM+uYz92wv2q%%pZ3wA|0vbrGfk#R zR1qMYQ?kF1anGht26&$#<2Y_E$lDdMV%EwzOocBIl}V#wA+SGXLq4{vAp0kOAM+-4 z<(0w1di>12j^F@i&O3`J=^Eg@MPu#VAS-gyu0C zy%&=?IS6xCsa|hYDqL{y18uJV+D#@XlEq+ysq3RW{ubE0p~H;YP8PjQo`0|)NX21Y z|5^W{C3ChIcd~f#M^-PEPfim`j8N53nXQ<+&glUxT9l^(i=j3Q!r-qQ^M*LOV3KNu zWB>8SzH1hUbL2N|A_l)pxbCZ=LnPB@D?xEkpOss~USf ze{uOE935|hc?}nu5Xe*b9dOfDF<IZ$9zjL!A!h7nyMeKXR_tf(6a;hNo9SxJynoB_ju1EZRI+oWwMqYUIN7fb#NB zy@x}$-DU_Cp<;xVV)>8eH9L!EXJkqLuV?qI(KH4dc&yV~l1z6C6q4=dv|+KZlhKGu zY`&?oMCQrCT0ftn^y&MlCPLE;EQn$-Z$*BFSp{AUjQq=mh$C`npBoP{jo9n!uwIVa z!c-IgNKhH@)(eh-b^{igZ=hq22c(5k%*}f8Ni^BVDbxxP#mD^{v{@yb$Z5okfwNbA z|D+;>MoU57ET=RcS!G^8jPGl8S0%+s zaS^7!?y=O&~#PJiYxC-dvZy&wbZVNydrFG6$nifD31vKPQ(WdhR? zOC<9KtrKU`CIo-zZcyfEkD<^$t3&7~{q)P^w7mgFUXq)ERxy)o;f!Jn3BGs3oO^QWj3fff-tfRsNcXyoAaD*j5D5kWYz z;aF}CXsZv0l2{hhKbzrM|2!jUaN*1S2_!?UkRP7XY|)&5RyGy6ux@S~St1MOO1u;c z7DSsLBl^+&EahWcf0jOdxX%2$B3R0usX9-;#yGFNTyRPFh9ViT!>>cwHh$9ZVppH= zsGGf^Vuh=MY;(7^VI`Mbq6$?6)h#Nc#LaBbW{+xtpJnDC`spzsQ%U?=w#H>9bCn~J zi1~ur0?r?OvSdqW`|Kb*IUw)i2R_qM-08o#=|Q-+zjroK2YrND#L&Iq;gEkgVXqj! zTCjSIw%t&EXC>sgx7$3F(R|O@YK@`$L#!N18_v7RdWUOoYm2K|6Ju1Z0?r272oX~{ z!)9y+CBI}sNTU0Pf8sGVQ<9rRPv}Dv0Z*ncFFI=JwUp3~>*ZQ0ZCRz_jEk$PmTQe0 zDh9kOiG-D`Vh;;Wu5uj84BL^eG!u2Y&;m88UBaSlk@T#OzXkKhd*g zo7@CW`a`!%L~NmnhQ7TB|E7690RLPL=6?7n5@9d-xi!c8)OhgX+1H*dUDyE593-B$ zamk^ywGq!-U?It;0rRmwyoWQ^Fk!RUClmOnryJ5GV++&VRo%v|P}uS0%$wk;f@ph> zjg*6aNS(9phiTM;Kt&7YEqeftg)G@C#WJYU&*7&dN3!H31Y6i45VRSSg)U(Lu%c#( zCF2^@KEgw84$nsxLhlc<9~H1f-~uf}kQZh~v5lXe^b!csY2q%Het0L1%f=)KhD9NT;j|REg^J$|+(BsygZrik~x~w#MnTE2z!gyuODbcV_ zd$w={P0|bL+;(sp zZmn8XKt?#pFL1#Qy6}^RFHSbZmpvP=3LrA3Qyp&*Pj0D^_43TcsLOHSrM?It)w zF}7bcs!=nNC#x21 z)S^3UoK&Dn?W}vZ#^IUV2OeK%YVOe;<0KEOgF1=oUT7D@drs8g5{5zQIIQEYSE6at zOCVGH@Cc1SJR$`b&nXM2xuL)n=JW3|D8qLSr@0qb4iWfNx_kdM3ahW7^f}fm2r`RM zQ;hNFj#+QIv?H4x`o{rALFt4JCLKNc{_XPA)dtUgNC^Sh;W|3KE3=B3>W1`(vbytq zxG+I#fpUmUm6E2p7oOO1A|m{|N8_ZcHQ2M#hKszBK@~x8h2LOEe7<-C>Tt}@@|~|f z>Jxv+E#kF+a0$o|MJNgM}y@kAr4jDWMX8Fq8w{;;I0%+>`^^GUr;m$`WLMwB4m4cy%8$=S_ z8x{NDMp+`cv2&`84ARiewNW-I{IjG{v;yz45xpCu=grG?6-dj)qE}v|$vhs-MkDmPSgZZnU;ki? z@e9>45Xi|NU&d1Ur@J(Eh)N5yiD#16Dq}K4BI0=k-P_>j{`fv`>41P&<&=ID7s7%= zij%4|zSrNuhRS1)Esh)mp$>}e?9zXPc>Ir)>w!~DvAjw*n5~Xu+OU|KplX)W{5IYG zB>9ofjSw$qW)W%Pp{i-g-l-5#A;oiO5p$&1;9!lKV|^0m|KtzSCg+qK^*8-2j%Bp< zH>sH~2KR^kGJ+?f$eY{a2m{P^a>5#uuzydtXG33!x*+kAt2J`P&qMQq1$g)%qT!kS zT}|pr<2+){s4-|5<4Nv!?iM8D zbjSp?WOq4&2-C1md>6eIDlNI2=Wa+GU~RXwIzO%q^aE`FlC#HxCOodPA+e2W8HCA7-vus9`J04_pme>g1)@ZK(%9rX5 zP~-PAqfkj~FNQ6+I75#;J!IthBh?gX)rY@CV=Y=>a+=q2cuEwn=%T9>3jz7N!KFJ? zDCS=OiGqE0K5ek+20{0ec}#bzBEQyb_XR$nz5%*aT(N41_f~W?VK!tfM62Sn>teW} zSRNgd4Khss;ha6ldrj*)qnZtb@%5DKA3rm*fzHF<#`GuDs15|q<-e8XCRMX;v|D>h z7hqFIv0Qebjy)9%2pJsEp`Z?9v^|krm;$nkroT4LZ(u+E+GAOiIKMXg;TnY#Jjs|j& ziQ(r#R@hjCx|=`7LemYyza*j|?cC3u({07+w{X-Uank4g9t_p!4Futo`zLl(zjk_N zKzapb_hJ6@`NJTj6eT7$RW}}=qj!lL(y3FNjTgu6N)_h**h}Ex_Mr%@|7A=hpWgH+ znk$QliZhP;^bqN?N`?^l1ZD6tvB;<_mL(z*lAL$bIAHb{41}EmC(r|n-+eb23fppf zbcr1PXM9Q4;G64bp{_5rSg|;Yk;xF{@`h5p?tX(q5yfwth2s|1NjPZw=z7cAlHs&< z$sbIG(4%%sP8o|bzux}h^3qyH+0;(OH>K#v#-F#iaSoe>PmC+;Jf(~L!BAg3=_As$ zX=Ig+K1}P7*bbi^XU#3cAk7UL*J`UGSLpLFUc|zFI}S`4Ot4HUs{D{rZK&*+!KF3uj9Rf& zy4&EJg^rsFSQay(LD;n1g0CxIrQOOFR}zFmK+LT$^Pq976w{BE!m;yO(9>p0w^tC(3*2@AnK34=K<^@*Y|jkS0Be3utExKbz81%R(N%d|e$ zRab$pw*=HGc377skGQ2>+2ur)tggR`mI_=NAV>`e17#2n3lHfrfN`MXD(pN8-Z*(s z#eR9Y_!S@gYBviNyFmKbTd+a;*_G|}(33^iWI&~x}TE0_da{mZR( zUv_A?IloE3sAVW6%V&AvcANZsovr+H;Nlda+Rrp+YYUVrMk>eW?0i;&s`>=h^tPdklwVlxQ);Xf7|FHjb7Stt_$I)!&vtxjCZf~3kw zA0p@#v$W8M>-TKTNc!^fS$T?j$TX|8Q3` zE-uw(1r`UE4^knIMF@BEM5UuS=0M>|YP zP*oyR>A=V)MMreaS1!gC0mV0ZAEesh=-fZlI_M+x^hk z`TVSgN=garc+%z?L-~wK^?8*i!z^l$CzGHvPI^k*WS}y~QpCiwXI3DL?C@5wAWUJw zPLp%Tj?ttI(4)wKUV{Z{MBwY@yD4DHr>|A&-vle*^1sFS!7jA8A`Z)B{G@RWpijr; z3SS9!{^hwiE1^cU@)qgTVi#3;>ucY?8?Hx3!5C z@wqKxw*36W4kxyMH0MvVtPnHx7{Wkf7>5yb$gO0OK{XAo`Z_?Ezw zngN}8rdB^-l-@tqGh_F4uCw?F_ps7#z3j0UYXF0;DjnwZvoLK2@>%)`ziM0cHEbUz zX{_!v`4g;{;hHE5l-04M1R4>HSqZ>iA+ayQ2_OgC% ztvDS2qT|f}@z>Vsq~K%;3{(F{Vw?;z8*kCUf%Epa z@_zPGk{%e;9=@)EXTgTJV=giz$Wn1~3AeQ{=$UZtwRTWA+H4IcPA@Vz?huXK4zn=f zNiaB{zggsQA$;TDJY?KO1`q>%an&r_G~#-QItZ)#0zlyh6GNO0Q0`3AUnN@o}_SE(eeNmD{%bAON_IJ$8JIg+}_RH4V42Paz& z2YEVo2;kivRi<-Fuq~?CZ{CYwl?RNJ%)TskzePLOLdw2Y?qVO5f6d(jvT|sa5_(Ef zEIJi+IsHV{uyj9bXA$D?48oKMCXjF!qSalrI!((PrwL-{Tgeb`0nR_7gy>MGT%(ic zI6`cXkum4di4tHsqJD$bMFlb0b|+?Fcn6l9L#sBf1+ zI{O*kbmw@cWh!L&g~%jpS;nJ(H~@~bf?x#S;G29OW7g#5xyTI%A|O-*N*bWvQsW|^ z@3hflt?!IX^x7mJ3m5O$731j!9;kS&P0knA5DzvQ3&Y+u0T@4DbZ^B@!C+(Um=<D*#{r;F8OFw>B?OpYPLf5ij^BDZu4n4(OLI#cLklt zI;#Rn9>%m}v%R2V3xCd$cTe2RdF{4DA!e$&c>PUtY=HU@Bxq$qY1fu)4eI;?l08jM z%;&ZNENP)(@IM5+kr*!m)#DMp!zJVsvy`IOE+{QpU$j~U95rm#dPnk9X1?Olr@SPEf+A{De}M(G!7<1 zrb=|N<0ms&pZX{iS2~-vR**N3RgmG5c5ml}%5J(aS}233+Yyp83*d5*51tKZIjw;`I>Dj22*vOUZI@w*-XZQ?F2ipgzlmjBbb= z<4V<&#+}q=ud-e7!N_HErR_L#Q^gO%<(Yjl^1>1Xq>JKmKHYADdFPk}aO<4{y(KPB zNN)MmY}G|SDXb#% z`_EZ}=#Xju_zCH7G?h1BB0!(*gdoy|ariEHdaE=so-#z3t+B*L*EL7-jdjg@MHWG? zd%TKayBSjCeG2YDO+tNMorb8P_{$PkwBM+f^ddzzH6#e0P|BT}cJ<<2fOMKJ`ct$m zJjsP94Lw%x;*$fJrX3a8VixrH$V7o+k3h~2ftOU57EY#uJkMj{OMFc9VWRlricu(F zXRuj8n5Euc)TX{RJu|uk(0<@O+e})e)^v@z+{erZccWG;CG=i0G7(|-OoO4UdgdX# zB6)hb)Y?lgt1%G8>B;A4TzrpBVXfzK8bc+yHgGUXdMh|aSUQLI6p{@~uarlV3FzG+ z+8*7-bJhHPEhrr)R+wDqx`_E3J6wwq$sFl$sodU^jpiM)7x?hN%=pO;@w-rgy^Nkp zO7u3&u+hD3!NJ^fH;p1V(K!RcB8U5@|8{$6U8edU(Zu8OiwBY1RScp8-9Z8y(np8J z-P3c{0fTacH`t^-bU5yLJXIK&D6irEk&7Gj*q(?L1!vNAQKLs-;&)UQxu?(PL$>K^ z;l(M?Q`h?wfjiK3dveR?f#u`pH-};+o4@0la~tvyk#|ctZel#@uT>7zB>k&CJMt+e z%$V-+@13!mN6;qo5M6(FCpTY-8vcxb!!BdDxwnsK!?MH7Y91DtF~3_g;Nr?ETJQ?D zzbDyXnjBSjmmx1WVmGSr=}dXj*on9x%{Z+TY1broM=TJDEBOmvcYSG9`{5{^u1>(r z9sIy{ztalRi~q50U1dl7M~h^9Eh0p*KIl8Beu^@3g{KnT*kr)G;lYz^Z<lrDN>%s(X0eHO(t~hYzGO|NvU>J*B4L;Az9golcLym&q|4w0)bRv zI(15r+qck4(kG`KibZZVS*WO^P=E+C-gDnoShUg{c&FjRM8}JCN5VyUZ`J{(Thi#Y zb0WawY3DPx{a90@m%w|=M1@;ZPp#_{g$>dKc51#SHMAGj>`!;34gFiD$C(KYAmy<$XYg=Cz?F7urYj> z^Je79ybTXl*fh(F!db875yy+TVI4VuJ(x(DpI=Eg2;7u3KZ04=o~0}WwG(#wkQG+2 zszl3-aV>O*XhCgJE=*gPC|OZNPLsVYA~?9}yXKE&#nAN$VCtBwMOtD3D7RDqQCYOs z6FO?wIk8&Lgd%j2Mz%y11I-`n;rkQBr^co~^}xrdGiz!SlZ?61gMyyz#p@$#^;yx4 zTmGPF+e=w$?v_#LGy~=S@d*7KtCDdek}gW=70M2DtYRsL=DJ@YA*Q&d_rE4hWL0PV zAVP`R!f?)IdQ^GZRT+e|i2ygT^f?#D^}Ni_U-Dbu!u(yQ-NF*ydxJPbULy0iAGj2j zBr+U<(IR#83pX&`Ep;#AH!71CT3sl1EfJFTZ?RpN6_0X+s-AvDD=zBLjN%e4opA>g zks?r(=qA5qU3qBF?7tNF?U@F{;tR%_^>?k_;RX}+e^ZNcl>112SXPm_w6)ZJ@-(Q( zMDeI8Op~-4WBdTK$}O-$6s5+i+ptkRmp7d$vzJnCw#fb!7Q2uE8Pq5)Z^@*yCAE99 zQ1fKLjpgX?V2>pj21vD`hKO#vI=+pXU;3xI$WIAMq;J@9*D zzfV9PE*Rl2!Odq3RqtoY2{d$>D_> z-J4ugR=z4?U^RY)bvRnag{VL}1|CGJeoWj%W8eiyvC8Ps43Xci_xUM%XOQlkXL3~N zJF3<`Pb!6Jl9o6y?BMfSkz`ar@Kk_BBO*!EP&1?U!wGAoxK>s{*ObN-EoZd=5G*l8 zrGtYoPpS~}L(-@?Tpl*`G%Ucu z+d=Fgk<(B&rqtBgyJE?;IH-cD*cPF+#zs!evpZ@E%d2+}A08e)=TpJbDH`wW{_V2| z@$;#ZVX`=5M;?GG;$%Y>lf-Oxv*4{@*91G(hs_5ly#ep*VA|w1F`rf`&Y({f55(Pq zYl%A^s1IP)90zJ72V%5Hbl2@kE>4rFp(oZBdS>86ZS ze$Se{w6Stx>1I$4txv@+IXEWqVj^?35SyT=`dT!fFVGkRPywB&uwll5isWGS~ z-+P<hH+*d(NLyNq0P z7%1YL)$VpOYE3feup8~9b(6VBraFT^Q?6>ZA7FbAz3IZJ>&-*58iZ2&dRdJ6^l*&O z2u&Z1fX*FMBQ^(8(}nId`zNtHQ-!5%#1;j3Yia>Da1J-JUqHm9Slq_yEzPut0Bdcn zyDLT=ju5vcZbSVn>c`}W1bcx;VAsxw$<_{mijAsi&+?CceCYBf(_7ZDO zT2*|E$=LErmQETq*_gEnSS!KwBuF6?5w4WF(%2H*exEBCg1i{*uqZ~-L;V{%@D;IX zkvDB1A00&!8~7%08*?O_z>lGR`JXj7> z)JZbOTIU4yH2~-Lskg%m*8}{`E^tos(9!hkN^6eoj4eMcNA;=jkh9m58jV>}qw)Et zAA6I8X{5^ySVHTJ7d$#Y43o6;^3&12g6%SyGy$&{30;lv;@dM{7 zB$f;UEyB7%HK5T_cHWzV!63^9>Wc^55Fupdp}^5`KP`ac-03v0iLM*=gYQVKNhh`I zh_+S3&)u3EJ{s~Ygi9$$6;Kymfg`)!0*pcg)R>%9ISyJSD^Ok`+E=wInkjh?R7cE8 z)F>cyLO+LP*O>W5n=ie2Vm>D-!b||wL&%*4M-BNXtD6G$Z)bO9aMa?nuy;1;ATl&I zhh?F>bdF-9Gj5y!R#?rxb4u}Lf6_dMm1-$2DAds2v-Ww22(xs``KQVh&OuIJUqltg ztB3}~MgSd7;HR7hi^w8H zEDAGDoNSLz9NzwbWa8oBBOVwu$E>}nldaW}RC%M7c;2y8X{POzglR^24v|B|OW^X* z5z{_WEXT{dtcZ5may ze*P?Pb3>rT&&R`fUM`nF9ayJ}lFf!H(i*slc9Z3oNJR4(nTGGM#f+ZiUc+Uy-MS`M zDJ>gwws~+2XJncr_`L(hv;c5e;0MH09xRXy)Vf$JNn3> z8#1R4KL_k&i1M93Jc{q)M0xZ*z0ysW&9Ncl33KM}Zk=+cr(CqL4XqWzZ5Uqzc3^9U z6x6azD#<};=eZL22#m9CjOT!Ze)7({A7oG8$-ex~^X&OY?`Lm4Ie+VCo@M9nWpBRo zcJ|Tv^C$RJH`M1|t?1_rK+*BJHExZHRMGsK14%@oyu^5TDBroRm8;XmO|joMkcIu? zNactu6NokaOpPrV5sV=;>C2_Xl8O~E;JQ*zE3-0ZbRc=Cb6`01ttRwsF1FUDoP(i& zXU1_7>qEOe&D93fwzy{}*cgefRy3wJ^S1T?vF=K|ixtt7p(+uIr7XJ88*Hsfc{_xT z=2Z!z&m#kFD8WBVKSsrN2L7TyULdvB`Q!9^*}QD$l`_I%!s*eNw`)h3-9A*3=y(v* zBkzHFWR8pgtwMaQXhd-^L&wfnUdA-$-m$`jX{uIt5z1i0BlHvX_3^aQRF{>k5nhK` z;9ouPC+koR3#;Rf>R`%*(guzCa;55fQly;@fg-F|G<@n?U4bm>z%uO(LCfRZ6cn3( z4{dcu)l~^t-P4hw8GTp07zhM(0I})HQ7KVMs~ge*CXG-bIQtB4z+zb9?UY(it9C50 zdL4s?229qZ9$9!5$bMx=JO%>?PRIo-Z?qY^(^$EzCSa>5VZ0F!A~VAYQ?gbc-0{jM z9SirgE+i5UU0IKNg?}3EM02Pu+JP#zz%ZjIC+iZ+2?4y_bZqmjHG*al1VuG^2PF{~ zr2E9j-E6I+ulirL75*!5K{v8zKCQ+YoqA$T9L)Nj8D^wU9P6_{zz4y%y-r4n6*|th z$2r!Wz*E%#(=7P0XvBs)K2c%aI5n7bRu5%3&8#X{-kFeP40x?i8mm&+*Ay>R)P&4t zlCq?94{fOF3x%;>cOj?xqpEABK5(p9F%mEn3A{6L#>*BAdG&m!8`V2&*f9X{2u=)t9x2<8GwUgCHUcC+AfOoHZ}Gkj2)=a=;Vvy>+niXce+w#;H0_C zt3msmj@4c5O|VAIxkPbxu@IMP_AYrPfof{-#ulAMDR?7`|_7rF5!|eT*4K>v3LH4zZnN9Hx z>0E}Wb=rA6{|--Nj8xuLquhBEkrWw}MgjK14I{h5>USbsW?+F3p@;klyZtrbIdPkdpfnw;nztw0!S(Lk!-auG|G3pkfR zXix!%1Z|u&k6t9R9h>Exhcc?Tv8;3Af=TVY)-Ytb)-mMSeWXq>S{p#0Qbc-ITRVbS zdc&6M)Snw@CXyoG^LkOTg0HPQu5&?*uq|%drkODW1yvwwXUKy{(v{9^n8?G!$Hb^& z$DF+p;xe|snCR)&pG)W`l(W%>HBC;C8GPuk!4=pQDR9l^$z2gIS5Eq>>cJAbGFhFl z7R5sw-11O7C`Gh}%bJXbu#vqjr$^^198YaNr-PERbE}o1m~rnX!9|&|;UMoYRZL1K z4G*2N-N=e{Ss@ry<>ev}$8al#t`Jr_gj0z()M=X{FWMT03qD*dFjAE_ZgHVoH7S80 zeu(;33+*B9W}aen8bwFodc~|9*l(21a@QlK1(9kX*YxW!H8EFGEn+(Y)gp4o+)_k#8DB`Ef7alw(wA8ZW zTgH{1N5GgfC;=`jE3_@-6mhp8VDgkKC2MM1bUAP?BK7{vpeSnKkd~s$!X!9Q-<}5# zd}`PvEo6wH{aae4lT@r3K|;WkPE9kg8i9U1eUhe5_Jm{SLY9G99fP5Hiv{fzDPkVF zgFpj!_E?Sg^j3{0d?Hmx0KqzwmmTM2zT@Jl9MQ0+Somor`#C=R` zpbu!59bXiEbF1vcgnjb(-M2!}xU_cS;0$Z&iJsk&;jHXd3-L~NCw{zYySuO+_b?FE zJhYvYC{Sd}G0Ru{gQ8yb>`bCP2hMKYGmDa$DiW|NACZ#&Y_}1*C~vcZHi#hvbB|Ed zpzVZfM23hL%YN=d&F}BBM{hrQ+cB>p29Pp#VJFEy#bqpFrLm*C0OMc--89+b^kNIK z(6nYY)Qh6|_do`?W?|_f8Ayy4AOH_P87QNqVPC8veXSiWIuSJaatQ~Y&Q;ZM`~il}JA zWGxCHfHj(7gx=p$SY+U?Nn5FNS6u1D&l)T|i6pVsbCxPx6c4e`vHCb6wXge7}jqR@V#!BW-UdaSywGMoZH@lQOK?MTcRE9La{lqR$xx^SEN9V4_ zU9YRia!k@C>WbcC*V9nIg@^a8mE_C8(ldt;Y1$G`&1NMIpj8fWH+-NYF+EyA34%;n z01q*lgX;Dcdotuo+7+`br`gYF+twuNo?r}L9-Y_6XrtsvORsb8ba&7i>BJhor;}6D zW6n&dB481_;qLc8`4kQ!f&oR5pT1=Dg+lUj6Mf_uHNvf! zMsihHN?;sheaQ$`&N9`QM5j5Ui~0AQ=w|t_l$dhFY1QJLB; zI5l{a7+msav_;yaIn+^_*Jo`Uta(yL@t8Hn{;}~Gc;N6vMa<5oD`cEnwT*&b!DFjf zcuTmn`VG!TRCsDJ?NK7f%4&7PI$g9}dnv$}M1*6oSWyX(I{U%yF{H?D`5;6J41(cp zIJ9Eipjuks$XpG{S0eS9xe+kTx7ymb(X4JRXNGr$_aob&oHI)Z<<=-kOvbG?8eD42 zuyAmh*r_mkDVI$r%3NG}L!)5YHrlC17XwFiLV>8* zqnJ$Y(H23x!7?{8F(_Jip{8sZyefO&p3EXBMgP=L#a*BnRo}t8@TTBIi(WAtU&wj5 z)3I|Wn;ecdoTK_ey(54QyX-iv@zt5?BA$?)*sOMKW?>q6>>wx@n30pK!j2Eo7A`RyuSjx?IR=Y}{#?TE3$ARuy!n~AQ z@FUd~<`BufUKNLZ=To@y??3%m1B>sz{ULMg0E?>mK>`^iZV4!%MQFFJ$@)?F>hyG- z!YSL*OGNFU++`0(g;0qpzK7)Y5napMjQj?pv8=#T=skJwSgM0>oGEofvYocq+;#<$~) z5{=Y2UzpYBb&YmkPsu;*N!W3Yep4P#23`&oJ!bLjFmchNr-Ztx;?)5;Cn81P5t8Fn zqmi0(ts!az*I1s4T(Can2s3{RqJI?dZV8=&zLi%PkTuCT;V7Cps zfSCcVLFQ9Qiy4}%d(RPar1%eHQsjgD1$2N0YZ6R?X9LUH1L3#^R5J78+aiw{%XDo# zOS#??)RBbV?9y%!K_Xv4e-OO+_~V!KHR*!EeOGp>u~c`0>}TbLfk`$xt^NQO^z<4s z7*=&&M=faZQPmUp~!%f>9_~3#HY%O!^QbUsWWJ3higk z$y$oksc9#x)SMarK{P$Q7C0tzWhMrNw#yFq%|GzRM{titGt3lFR0N>cKG;hBbi)+EQ9)C{W-Jo4i)4LM;w6y$KRpRF|-~ac-HE zPNVlY#8#ueFQX{;c4z@*RfWGSi)zu0OEzF)N4_EyoofY0vUu#WR69cr(#v@}U&rcS zZ*Eq0=+vHjU2160kwmBRUI&pNastO_(>mhfDi9nKAO)ajp=}sCp9?YhI1wXV@SA_& z&$?w4!9`WmrPZpV7|Nn?+eC@C&J(<>RtqqqHUi@#1sRazg-Za)DY=mQSQzFp66K`F zQ)pjFfW3-|H%?bJ^sd(yX1O6w_SjQtwOg<8;HYg9ElHbycav^BvO8B$&@Z#FmK!E) z8TcDb^Jv)f!qe)`rjsMAY<;~KX6Pp3>w>M*RBJz6q-D!i^?ag)Ba7sIU(HX`)30)Z z+|$%jv;fDk(n&mL;~8s1T_D9$SOv1Xy1}UPjOR z46uIp6RM_=134OHxHbSGA*n(4JusKstSjOAk@a+BBujM)aZTP+eqNEt_Vi^p$8#TL zXB6G^tR63H4l@KT=OOF13FN64i5t{6EP^CO=7rXTfqKOWS)DxlR$1Sw@+;LQ ze2^lyjb)Yj?_j;N`vpbF)TISJ2oO^Ddv0pT!KJn{HwgIpzRZ(Cs8G*`>03JeFfAUH z5jxsRzS~{F{GB7<_13UhRJ&M~k2ZKbOGa;%8V{IonOGxQ;Y{Gxb0g7Q=y9=vnf(6H z^3q6h6);NGVvj%180z%opXatw_rlj&-JUpY&Og=SB^W~tU0FlV5G7;$$i&+@)*#*( zJBofZwvylkTT&ITwb3mKMPQL0hjIw#v_HWlT(NwE^G?yQ!sZz}_`Zu!4Z^4|(Ackc z5Dhflg1K!gE~dXGe@+R?=Sn%CC9ofPK*Q%8yT%qDGY-cY#++A&TZso|UnNIPP8uci zCVtoz>=V?E>eN*gUs*DE=t4CCCZlRBlv|2+?JOT+P1kXvRx#8hL*B?C$6h8x?2Cd} zIJOBdfeGVdY%4{%@;;z@?29wcvuab>q8lm;E`XPzXD}8;n;6dKRXQb{XUF&NJU-cP z8AsPbjWy*b%^^H8kmI`#9-nB*p#oSEzV&d?ehC&COSI1NW|zozO!Ft?fZ-&B%F?oJ zw=2`|xZcHeZO(oIS@swcdX?m8Lf(6X@uX-h<*TgG1IiH{Q%Y-bxJnqFmIaX*j7p?k%Toa zN_hQE8$JUN5_GpYsw*FL|9 z<hkElx=+h^D&}!|N$JI_w3y8ZCh&GvXA?9w!dNyj@`p0ap zVYTwMsJIgk?eWqC>;P4c7ROp|6_XEEE6#_C9Ts3p8d5~*vXs=epoId8++AiWG(@J1 zBrKC#s6tvMTjYt-#BhZ>9ggVQQknDADJN)|-cZs~nc`##x_}rv_Vlt%p6w25S&fpb zh0c6W#h|G+oOy67pj#E=exe}EW(KYeX1_M@hA3G2_Q&T5xQ*CKBE`B9U(!s2PhqaF zs7qLVMd~@z$?Kt;;m2bVyA^@xt2?2{cGx0duC!Yl5SZrKakzIrTO&ju!m?3JQK>bi zrfx*@oXCdxFmP=bNnbDP;K_(t8`C1CmA|L206WI$lt3XVo6L%rM3v1i$V@z<>XTVy z^hTE9vUFZKOAESvQ??54%2A~6G}V6J(3_5BaY+%~zB?N2PAXJ0NUH+kQuY=GwVHb+ z@d?(^Rn3EwOkqA$coA;Cvulj(`P8ZhylCI_zFFzfb!U;9pHol3BWLAbr^cvt_w&&_(^5_? zx$_W+Rk0fsupB=w#v)>qWKUDtqfg0x zSH+ki{lsIo(;-uhy7-DRwAM397GlW=pco2c_6CW3Ag;AWVJJs+A&Le1m)2Lz()WyI z!85`Eqc{_P6Di?ME0LwN;#&u`xjAV>{_F{`pOES+d-nB`VNk3;7)JG7x_ zL`>aPueDf_O^n$+FvjT0s2WN~&$4_b)#VmWh8Rmnm{^WoG?QE+HhDkQ@-#R!Bn>k_ z(3>L?5*hkskzmYo;~LmjLw7pXGikI9s9u7MWeZP@#@(BZDM7&~d%kKLr)6U~w$+{L zQ{jNOg_fK<0n4I!l_a71g**zyKfwVS@OW-3$~}Lt{Tv+Fw#7caLWm7i1M>BN5mix| zkJJR=n+hy)hGBY+blyYwY!s`}s-S@twzgZVrcW}{UYi4KrZc^9}=PKVPzz5xDemr zc2b^{gj68%p;L}y`Ss1tFx>FT)smQL+RCyAqTstZ@;$1Cvp_YkFCf@3-WHe0*Ip~nXc_2Y{QUg!R{`|2{_d~wANvgyuI-}m-gD0z z0~vvErPZoWPASMxwDK4)8F5Y}47ZtDG!3yLmWzQz71ey5mo4A6xA2?Qo-jY)g-6ps zvzhb@Yg+MJ^HvnzSBVkM-Aq^Zoxod2lbdz#F%CGy>LlH2YNS}pKt`92@7|H2%b5W3 zm(mj89_5KnSlLA$AFD1dwMX7gxf@$JOLLG`Xa_Y%6PNa;cp!8K3{2vrlx_+Y1{#+@ zXAc5!6k^xsFUr%y_riCfd*n|^ITN-K5^sp4ot@shlWjK&%y$mTCK5N{n>ax2JAg>T z6KJgYb};r474xQ#r5=%_>$LhZT)1tz4wW)I;0!^|2qcT+BHb+QT|zTMaWvOT{rP6$ zPBkUosu)6eA@zQ3xx2_^PI3s1vWegni$V8`?Ss&h9hc4u+r>f1PN9NI|zpz`L|TG-ycGg;0`2k5KCEkj@?ZZv0ZlIIcy$- z@7NqV^(cPUJZjD0N_3LfrLjArSz0AJtTG<@2vQI=(W#}oih`@kog-Q2)$*3VnPRW_ zA{l!d%Jx%Li~JO<61IWshiyr0a;X$kw(&8OXo}eMW=PA8+Lf-|3_!bfXAI&tRi+_{ zfGc|~jP!Y9sv(dIF`2O_qDGfBg7ai+*oC$hR`(0na+++oU;~&aBs-e|P6uDdt{y-g zOSHnym{}4T{F5zQdl*9A{?9m&IJ!-_SX3c*eMRfZltGgjPq(!J(s+z5qosFi)E^cw z8P<89P|__!3AC=jH0ew1cEF;AfytRPR#;8(%J42d1>ONe7p!^_ghdG(F2UM|4W^OB z+;u=)21VN#V{Jofc(wmw$YYxYl4)iXv`v|{)?z*!NTjk+k^)+4z;V?1O7#`+ff|1@ zxP%mdwBR>+7lsoh><-8qn88k$>}y?Ajew_jyW+^hV^XgqMzlDIMwi}ShK`j6i$ zLdHZHXEh3;E-B-_S3#q2cJy|Ao~BK#|{0NNqZ5e&KDtO9y7NjN^!DX_hp_$6B+5Rt6`!SC=Ye<&1A1 zl}Q*7>DwtBu6OX4Sv$x!9JWmzR`uZ#Oe4CQ`|T2A?UcR2^}|*wYm`8GfPOi2y1ILV z!Yo}M>F|b{T4`LQHLTWCW9xBU60ga2=?EcDx_B9PgSa7itrGrj^Hx&Q$`bGNHl;IB zh*)fCDlhHJ+92U!cKp_(lccm?hN2)EkI&iNG~Dx(sBd&?n(;X0Mjw1|!j_jzMlKkl zqxY;paqCtU@*qU~Xr9_bTIY&`FG)`E)yTR~?R)}!7!RhXNJM&MG$Y6FKYR3nQXbot zult30_HL<~{VlSva!GMHSsV*5W!dJXa%eyhKxl3}!Iq!7*^TNdEUYMV6tF4&;Cp9b zrdSoJEuUjhWW<)t45!7LuuQ@3_Q|z7sa3Zf3}>Zu8XJ2L1W2^kG{$dMXn-!;opg+F zbH|Zwg}ORPT|=y2(^^+rb=N}HAw*RbaH4hFgpzC7s-hFfie+TTr1Kr>viCAfTCK3H zXW9p|3Jx@7D)u|;S#V8{yG>w9@qz#fd#-)5E*#(rH+EF3Mgp`3fEP2e-E~Jz3Hk>` zStjC($0wAv^IB=`WKtPPXP|o&mMoQX?JV? zO@MoBC2qMOtBuh<&mlkHgt==&#z3e7zKaI8_2%5{#h7y?<5drB<3zD6pVMR?COzLa zRkJF;RTwL~maljcXbEef+caYIRy#EO(tl!Pdf~>Zr)g3N!B)6?H;@WEQkntBs|Ou2 zqVm}9kzRQ1SDqbd4pehKa8iyqrLgk~Ls974i2TlDJwpJ)ED|(K!g!nJ0WB-yNV*aE zR`yiKy=s)@G}eubx~^k2kAo3v#M;(Ci6$J1zzW11-mfFot}=3R?#;euTZ{n=00Fg} zP{4K}5jhqJWnb32hAV77PaVrN728HlOpII0uH{_j(7DT&*8O3TqytFj)AcVGFCJMx zlr4Fpj25#ojy&CPY=hyYD*%HTEQEfOy`zbYc@Qvvam$@mjd9Z)h13AedKvhX)wkdq zU`FYoEn0++AGxmcnX0vP5te)L+mbA#!i zKvOL@XM@t-x4Jlr&Yq$DE+7R-s@j;Hm!(oE-@8NdW#gX>S%@aWN_gd8_|=z6aYopB zn%#_-I@XHlu@%ucE4sLB>KOU@HICJ=&Dc&)eD5AJV!|t(A4V>b#P;B;Mz*cQ(TpfrwMq-y16(YQ$(kUrMch)mnFjD|#NW{8&{Q7RH3g7?Ma9AUoZO>P)&XCTUFT~iIc;=7p|5A%rX z%;E(X(+HjvxuQL3jMy4S&TUJdaWW&{h8H+$>}6lX%itrvhdo!YJ!<6ns;&K+EZNWn zsnN(d*K4Q|>ndnca*8@|&nzMv@l4x(%b2v*yD`#n()4HuU6m2w_5;#*9;4AKXy4n8 zW$BIfU*WSM{!{N2qQNVJ&6z*kohrk0-FwsbRbyw4mX>VnZzQ%)_-||N`igd{8f-Jh zhPbFiw}wcSe0$?fy+38CJ!Yn+hfFkaLc}g=@JiGg>r{PMJeqw`lFG`pvE7!U3QC52 znUaDv@~o6iAdml9G?>`=t}ls5mx;_Nsdjtx-!)NJ2dGdYiMr^SLZ#AaSoy8w?)z?! zk?~S}=Uy?m5Zz3=%J)W+gH>DJRrjIHlw6v{M0RE299*j{^h;19z`^(LDcM4^VuP&*fBHMGh$=2Qso2UOg z6iw~3T7V*_h*o_kI+?((M%#_rTCP#aqOl@Ee3nGsxzSU!Ddn7)Z`a_=wZ_4?s>gK@ z_KF&gksbevWe=Z+!^Gy{!v<6Z{T0G;)bt3Z;uuq28c0C#g5MBxAf<*lPZF)b$)1Kj zB&=fG>vf)R5o^|sVPqQhQ_WyHnr)|o(dYAQ;iIwQn4iri<)@Y@#wOdqLn`oa;7iA$xs+CU9{$Akom z$B*WDhU*)rd3}K*bZP$j#&W*tp*!J3E7$!C@To16&Fdzsv3q0b!I7(Ev1ql!-!wj~ z%t794P&3(R>xdN15o5Lh_-d-^irkGyT(3C8JgFMADkU#7!+c%XoAtu8j7fr!)eg>{ z+r~Cm8UflQpiLz#caGFCI+IMjKxv#G@YSzyq~eG%tKANnzJ(gU6!M)R@IE!cB3Lx{kl$oY1X zRCXWVeIt8%Vm-qhw8vsm=X^Om9k&453(3V>eOja3Y1)(Cw2bXY4H=ZRlZnMj9&f`O<`uSC2WWoa&cc`8dm4R&yuw!p1qu5Rs;?d zxsM_T6!B#oIqSe^H|oC>2%+@v%Ds{(=cHo7Rh3gQSJt|$9g0vj9RWbja@TEhG#W}< z)RJB_FynZw>V0{Yg*fT?j15?r!`hhK>rflOFs$f|Px z`mQpal#D~0*c&&p)d}VRFfvG38Nh`nFkNw?dn0w88_FZfx0iarSQ%zAdz|0Um1|!X zuQ#`^gZx=F8zx7*)8@*VBXh+!CIN7={M^%}?D_~aHSBssNe=!2=%@o6)_czXi@f`GnJZdnVM@eI6_X>Igi(IC3J3uODyave1+ z>%yOaGcl>y#C>VoS7c|cJ*J4grSKWcdjU}xV@~J**0c(4cFi$#){5^f?Ez`ken&vC z?(Cj?%+cZD<6Mmkf^AjlYN+s36ZkTRJBwq4H_;X*2;CB=Wwxs}(_HKvh|*LGhph8M z@S9mK)3Ps|sf9YZ3W0o2?#z}}aRn+>Z4g+`YtraF(guo&>LWO_TG*m0!U%H;iQsP1 zsWs6b&E~VPA}LT5Ne+Z)A4bgjKsYGOuh^f`m3`zcO~a zG{hkJ4(f&07AM_C_?|kOFXJ{pDiU;@Y4>$}5jQotwaYF0WwtSPY`6Z%6I7QL=gSSJ z-dw1YYwcSco+Vp@!2s;XLLqBQm|O_WT)JOHq3c3jrZu(-| zoOi}#Ff<&+qIz7CMR7(_+{*y5<26qGij13gzmW8dDqh@588`2~0p>B!-r@GIdx(Lx zaMnudszBdWtK%LQ8GKZXzn^j)da!~uG>fD{Mms9KoOW_8paAx!x4;hWyVq|?Q+8=6 z%v{v42c0^|Y>=doIKWb9lQ^0>K(r0q791BO9hpP}@^S3}(=K-Nj>+1vPxZ^yE@?$l zFRV7qnDNx9Q7(HH5jk-mT$6THu*rqtp}airs!(oNqHAc#T(RA)m2t)tNkYRptMWP$ zW{e4E3>guy<+vx^2o$7>p*<#ZV)>^W;i88>|wq-aLU6570ZuQVa#?XnelK0?MxyrTcacj4x&2Q zXy_5Tj?AB_na?z`nt`?*;#8lGJ6Hu0kJMK)zK0ku*}1Ez1U3Z;ZAxn@tsbJgP%NYj zbdQ!k@S)rDsHe@zvXYuAINGD;#&de}v7Ci(TrZ2Zje%uiZ`I-%VGQdE*Y%Y9^x~I(PERlrY!XAG71jGAA4vBn0yMCwpPX0T}rZf+ksq;dA$Pj=Ar3 z=EdTqw}OSAbV<;IOiejOEhFdv1=o9o*fx?M*_LTlw+S%nLi;q0-o`>Pq2q6?@?~f4 zX*jJvZE}^+G2h4p9AzIAa%Q#u%Iul?)y>8mFRKrDblzJlp%~vKHni3Rx9!7eHf%N) zomi9hLG~`AT%{6Q@Jxpum?lk~Cd#0C0JC4Ovu#bYqD97kF zQxCnurMqqER7cE_X{#=PFFf^+igDz$->TG&0z?m_)e#xt<&;if68VnhXqmav3|Um7cP$ZhpV=G^ zFfSJL)`)yqG@)&qn~|1Xs!R=Cmx{XCr3_=PazA|M(Yx<{?K^Y>NV`$5i`&)*Q)46! z$kQNV?DfcLUAE!SFZ+}hF$Aor5<}CxL<`<#Y6Hdfb0wxEfr0DJtx;yPL4_%qt-@QQ zlFc;?%{C8&HZ)pN+m_+Gz^rV*y3w>jn>bT=Arr3U;f6Jj#~ddoJ?WAb;v1juNAG>@ z`IGbazULQ?G(>`s zv^oS@lXcp5z3h@ql0VS1NcP;|2L+}AYd&cTkwIa$*mDrt6zf~mA&^XUcR@Q{8;Me{ zD6l2)i9F9ebf5eYn$P&5c3&upf4$Gu<(LecVkOw+5k zfdV1@+3ih?8Odh9z5LiQx$-Xebq~o7wUwchre>40RIL`qU?etfF79UM7Uv^*NV`H|__JLtrpiXo1{KbX;lIPf;Qn&g z5f#p5VrZ0U5AXk_Ne1iet>zhc)C1sFNg$O@1`*3Gjr+7`iYWej2|@^WYTH-_YpPk( z%x4MT!>Ch$+1PxXGTP(2_p`gVLo*(OH(CNd*FfT$+DH{| zmo0h={Oh%K~izNN@sIIg_0j z1vs;-f(`k;Ycua7t<>}bjMW-gu65bplK;tVZvlOH3zRv>XZIeTq&41JdmtmbL{0L> zmwxZNkiOgefPLpkT%&$tr5n?dg|xdEQ9`rg(@1~A2%MYD-o^#8b}MO5A3PDX#TvGq zvq-5svfGk$r+?|ih=zZzldw;$qT_OY%39XHToHLHV|&vXkKyM#_F^#jQPEkL;fsg2 z#E1o-ix_73-{q8J$RuRIk`ED zJe0Dg9wlJFw%(^$xL|$gEBKif_YpVXcgUp1R`0pYOkq*AQY(I~|=a zO_->pvhbcdeD~#*F<6}`HVUw)`_%H{X}`Ax@_&_ryUQwp`yn!9-jTkxx)mJGFQF|%fGXY5V0 zV&QCGIh}1)G+MURc>Ob#gHje(m80aW5gk)^XsVgl<#wplndU}So#L))0IRue-l8Kf z6v~{4ATU3W6iW>+qdXQ1;FF@g=sdGzt%@mL7T(utd{9CT2pxLNhqu+Ad7)LDmpH*XgD2Y(U~ zyQjKSAroqeoGTHFA6Ro%IEYf#Y3f*Nl620McP0k08`xWDL*)%PlL6 zhS2a~ZRe$xdyO*x(`Q;YP!nWnrMbUwfSV{n{MMBlwDbve?_MTGcd6Qq+M~W|bGGd1 z_3cW}?q=GoG!&RSuQjHAp-rA07%(gnOrZI!2LAR&e1^8#E8FXmqIxUJBqm&rLnKy8 z;web*(PhV>6Hz38@FqFTm@-!`I~8bhS~+?^B^i3MFJX{Oh-vS;(QvI2(Ln9JYy^0s z>7ELmQWYZ{L6^9@ylbjLU`& zg-(k<&Y!Chxz5`VPuvvVFvVM8IEkk-)+2a$c&IQ9@3z47kfFNGc~&`N9JF|WO2&|8 zOS=%Zv4e(dv9tqBz?VC1szY$Rl57m{3T7=agGJse&A?{Z#D?nrIbSSvKG+Q{V@zh&WPJEENY(=Cj^ zb%T^OVec!b5w^PHpiX};R1$#+us&V3+eSa6+)c`9%)W3QM z4zZP`ZMElmn77juTul@p)sp8^dhK_mAyg80+Vfd5fu3S>shw{czDqW|?2Fl*n4bU~y<*@=@~w^(v)#mu&?R3yhYl}g=e01cuopc|(f5QO|V z&vKsSKG|Jkj5+684bXc>r|M)|B-rR)y*}p0_?R1a=#ubxK3(%!+Y9Th)1-pm#&c7xw^rk z&|hTzS2ejqSc&!i)ke>{G>n2P<6W_V>IyfZ7REvb1)!<`y@reft9JKgt)6fp=22!J zCF|f)zxR~GJgE-#U^COuAq1|KOk@i+012I^L{}3LW#6MtP3+VHs?#{oHm*Z`PJ+Xs z@VlTusAUY1uMf@Ou#6$^KnKeP{Ee9UkD#br57uPON(Bg9$!Tre=QUpIk%W8jltQe6ieNS&dpbx&`_mmRs`N1| z3^%a!vI~T*S;%#}X6dC!1#@=1a%i2~w(d+{vV0-t46HYKxltv{Cro-cvt?)C%+Df* zAx!r>j*vjKp%NU9UXrqXccLpHb2auq_1^8B)(hvgMVDfvMJ2J?5_!Nqf$l7W?cMay zvyNMG84*&JQitB?l^Ygk$PY|)a#za3e{=7a2jo%3ei8ac^V2HYVWFBGJc^*o zWunv)4N5kirCIq@i%&u$*|UxrzYjtjhv^n?PR?Tswm%icfcn_w z?em+>)#RaasXQyclQcP}W`aQ#M^tsU4L8;fvk(Bx>>dqIm5aWtRt2}k>wh_}WKDGA zb=R>g+=+k{eTg@eEN8-Too~8SL}ST3_vU$)6(X!7SF-R=bVO?j$Q?|bix9NCn+8{@E)u!B5-d#n z+#W{D&WU4d6>TAPcshj@)$rchF9iSPirc=#pDcZ|PeT8>~Na>SG*ClD=huhyNyA$s8_3dxV^8vB1GFC5)Ofz;A-a1t%ypOJ0 zY^rBMM~@0U=nvk5D`e5*#)<5PHRo+yPeP`yo&50iE6w!ps{TXOJ6@+lLy*nT5T65d zdcO{)R{kRTJdD4>-+|f)fWwZ z4^(2nvFM{4N;F9N&iU?cqK=Q_2c+t1Iuj55Ckk$*g!-T7WE}&~bY@191x1*T_1VX; z%~Jv(FLdCswbnP+s z!r@T%z(plTIOPx=H;q0N72i2)SgxFM(6&j6z8xJj`w@7#lQ014Ak!e}`%x-nzJctu z&zIRP^xL};GjzTW7Z)$7Qgr~LowzqF-7wps+dDRLfhFw>f1UXlDc2=d zC0^mFPvJZ#D+?SxPO6CGYeY$i0||d{Q~a&0&(9Q~LRWY6MfONXePhYZpuUrpkyS+7 zFBWx6Sr(IKA*sWmW0rw%+zZeVkSh#uG`4bS%OKCNhne~ou&IrTj2mX>rxjpg-XE{L z<6qbT;xy5=DJ#1rQBu4Fep50>EG!Ra5#7@~F21*nsVU2ZHWS91GC`kA}e(IYacB~a4mc{&6rJ2Im zJ4yMa`CaYOcj@5U;X?S@*UgTHlplg;n;-(sz7jVYZcO_f`h;P<#$FL>O$PeM)n9!1 z+(MJjCYN?lxFnJRKe^w(d>)jGh<#Y+R!P|8k=O7{lIc?EgV-1e|B7`l0RLOG#Ml(< zYr>EKFRm-fRY?Qk!cDO*kpEJ{8x5GF!UO;zjX#TdP4{U$r`2(=d^;*_DjL4h))P;L z-LUn)rv!z)VbMaLJo)@{W@_n?_`YrA?>_(h$&>O23X3s2F&97LH&WUDQ?;p|0k=O~ zOj5+bGb4|gZN6tzf_0tP$>w}rvv$+jdyhXH!S<+3roC;U&` zc7b-=Nevs@6mI^$o&33KIlm8e)+nA_#7}Wsf0mor1>Eb&5;cR5E`o_Yh>p;_sqm?GG7R1*rIC*R7^mMht5W>q|@XuoJWtwV_7*$3=Sj2X^_IUD#|Fzf%~6(Nk9Z!>r)??&!(_pDCp z;L0|dW$)!=JK%k$6W)Zy0?OXBwufOlXdfGBXefM4vDaPOuNMuL!C;T4Lr0IccEttO zDQ4z+@G?Vn(*CeXUub*IpnE?1(lq#KG$wyUg!&@=P5P7g_ig_7YmVlN(;pO{_*35j zXiP$Z%AU$ITS~g8N^5u2<|aIS;A=b3e(%YoBaIfH)%ycSDI1XK{B28u&l7cVT!y3P7>b3 zuk?yX=khCWyy#M{!hapYfa&fRT$P`pk#2VDE!#W0L#Jj}FCWu%iaM0K2(aL1e|e}@ zU6+EPwILyliESQh^wSwvauvL&s`l!S?|u^H*A*ynR!~pV0}5ee!b3oDkUdi)ZrLAn z|LTcB4-@s6(+aH%xA?!CGI}Lnf}G<|URII^z$lc)Yy+{bswGT;|b%VRF;v zbam*is6Cbq9Iy@VO3Xx#6-LA8)dxMRXXami8N=YR?tJ4)*&WBq zG=h;LV6-eQG2za9c??xqD;cT~PpLMlG~(_oT2ILzl*o%4WO0=bHZ`vxZF4+;VTUpLAa`{%e=fgwf&@D??M^-jg!>T}aCC-tFY^tvF`v~~aLX#a_cwpNMgUlm zhhwyhc+1u};|_-k+vq9&aP#O+fhhN+E??G*>b2_}r*~6-Xm+GHpe@IKR_q{938YlU zAD+C)YJY_~;8UnY?_7NhZWc}LMaj&EgEP3$bVMd_=O~Nk6Bhj6W?ep<{r=I3%A0y^LCesl|c)H-P6kA+Q*vkzC2O*uKJ-W zOfd?TLuo|~MrK3^W@=ss6=(pbl%Vm6*??WHww4Cq~K z8{t3V6Q{WA%rinGOoB{=vAVQ4=CS>ZrGS*OvIfO+5_}1P%0Rb$;a#9=(pK9bduTpM zKz(nv)mFAOML*TF%16@!eV}YPYonfsdC@KM9>%CaI!R9y4$CgewXN&9o75^6YfYok z!1gAxLDTGJKDjVxotGp6z&QxvCsfFRWx&PLl-11FM4A>$&?<9jH#Q(_+Q+iB2K)@Q z3oE*c1wb?0O7(bM?CYQ2DGzog(+8FM&563+_zu5tt#Fpbx}BYPqcJtL2)E=umQCz1 z4Qf9!%iMKleA~nWPz@fLwUuOYJyCcJ4y2lLNnobo%cX`TP)Q@K_J44{5&@M#!lD-UPXXPDaRp;#J z>1QIgJ$>b=Z9FyxQ)|F6)iQEMcs>KaHtQOWHt`HS|H#mtmH!nqBd}5MMq1Jn8j)%|`LlzRqQ+uFVzYSkU}3 z#RX=q{p}tI#mVK{v^vty+R1Bz^a%aML3g}zI_yR>fNJ3$l{mL7t)w0dY9BT4=cHQ` zlp8CO@5wrcTA=p$*M+XWPivJrr9f-=tu6v#GE^ za0;sWs@jO|)tC=cnE<7AHR~nyie?NM$<`MHNzz`pK5`<3A8OJ&7bvU+w$RITV)Mn< z9jTO)TZ?S@Ic@0PMxFPBZC>CWE}|RvP;EW$Z6Tsaz`8w9%SyvvXFn!1U+V-vinf#FT zV5Vb#0s%eobvgpc(NWnNVed zSU8p%#M9!}&NN_w4ur8)?k=cqpLaSDY6|1gLWwB@-u(Hv(H5lqbXJ-DYuanUbey=- zny_8tj%0nrnHLzltU&x}*qPOSm{lZsegXEUM^C?WjT9CnH@w7x>RS$t-dg%RrPKJ_ zCA5c8vmX$z=*8$ zLK7w-@P>w5lBgY2|dYO?PPOZPNGU|_J=-}bEt23F$qW-i&^oFY5;(U;<%eR_# zo7*p@k!TzGfxQ-x=SSV7>`+#!C9|Ga4}eIX3iVN-3bW!eS>hv>|z+LhC9x5e;c+ja_$O$!y=TMIgBF$ zBQ-#ggf=U#R{up-f0S;4U_5y(#^#Sbbr1ZjxHws>2jVsFS~qdl*p>~z2lxf`$QJt%hy+v z@4o>kGX3MLAFhN>Gxb1g)DYM%tHJxMwv&Q$l!$z~Wk-OOCq*6_tt2u0J|zTWy@%W` zNqf~U0JdKgqT~U@U6^&WmGPt@6=kY>aOQE&;zPC7)2Y-iG8;UR)Ake*1hJ_0WSRNz zxr*TyDXs0tM?qaFqyyTnl?ls;V+1)SgRL5$sRqqugE|FkuhatTp+tcOfZv!;p{=2JMCwvVUxJ8K8pyPD?nM;-tXzQ!w(s`uggX&4;{ z0FR(Eh`@Em7jGr;fM~Yh(P3tOhsjSnS9R`o(o01XB&3bb)mt0$EOnldo#lfhpjeoL zi8cn3PQ{3beEMWbd19hJyK+1_By}iOy38p^+hwaiRXv^TMm;E~xkR7o8W0H9{EP!t znZ}i-ii@b-S&gUJg#toU`xl+7YDggGZ2DoZa~U!E9fxoowhB5pff7<5ioY3hej1j> z8|gB|61K*AISqga;Eh@h2JPb{{%qzqst+$^U^%ArWcdI757VHODiu#M5XCW#5!OrL_%Bwz(F59Y&(Q_%Pfaf_zUfm^f00K0%gxp4aexn)1P79@ zLd?A~3#KqJ;{nIxd*zLuNxMg>ZtC1B9(d-HY1L1>u&0E!nhedbVT8q>R%S;=wH+M4 z%!WI2NwC~8=pfmlFBtUc-(RXhNuWhtzYqGPdV74M&UnU|nf~h~1qqEYslW1RMKa`m zSjEfAjY>#|rBS{F6SQ_SX_>z5v%Vp|#?JVwVlI~QGg3*BCq~L~IR^@os?U0_cv^lT z1qkO#6VYx0rUvAm<;I(8HhXwMyt3IwohF__?yQXstC`DR!A=#o&o-~#%b%@@1GA-^ zs=IzuP*$Z-@RTpb(hW&JaSG?+#(-nK`B2S|UNBY>r_!;_UCr!*zygm=TW(k^f-_0( zmVcOBaLmTOOIju_-Wom+yhv6^FJ#HBAK+Ci0o6uY0!ZvG{A)_Kjgdd1?Xj#N>@9ML zF)wuoF29i%-AYQ;BR;*6r4gM`d@F}~n1x|*UU(ZZt{3g6l6e9L&%47^xuO8|#x))u z+~a^LG1oiR5~{KE^4nET?J|8)2~io8VO2Y>z&2qAcP-b|&RI{twr9nnbiV~BRYz^Y za@TA;lO+i3Ghw~vwc(U3$wso1aq49zF-fcGeTzDO`^&yRdQk3?uTERluB1j)R?JgD zsAG*QTpC)&1EfFRkEVh$=(D>&ZX5xE&2i5P^);1-X4L@r5H*w}Q+X&e#Ouj74Jq4T zw?cgLm?a^Y-7cW7Rd}>wf^PRBATgc|uO%4+XC5UFPFa|wv2ekr()o*fSfP*Lljr+4 zfBW{EEE~w#Ou6qgGgIsY8-i4psH4&v{>EWex& z;l_h{N{X!M8fFnIn~KcNwcE?$e))o?7BMrx274z4dj!7pT@^3v)1D}_B6D`RCL>|uIV z_EK^~sQl8gNMzPid+P2U^b$R@_9&Qp;jcaO;7_2>#xnT-=D26o#6T zHRILyZ{D#NssPf{%fTdH8IGAM!+t0Y23Or|)|j@ieMN0b^gGv@YZR(Vzt+SsJq~68 zUwW8g<+g=RW}&C)yK-oW;qN4ti(h@H)_Zk7(O=C2!|fjR{3!s8tmvv+glisR^bpt` z>WQo2xdFQp%Ze};0lr1JQpZ{BmgB^PcEusopvk5J{~ zmk{Df8)dhj?JOS5!yM*TB`rThGbDj9T3H?!F;oro0&Wft6*%YtD8QaV93f{piMw5I z@u*oP@bN`A_Chh8zHVpG!x`P*W5n#Xx(Vm!A%u zeb>%^KyIM!YWjo0UhvBB4TaKW7M<*qb@%N{^wG0|P# ze(~N98sn=F+*swIJ~ILnOqsM5AJ&rT?0+hSETXWKW1PD zy3df2Djh?2E1WRqi#GYm5!kL|FfGg_3P-22)G}1i)Q|1W$sk?wO?mM4Bva2itN@){ zPt|y7vRErqV-$gw3!leHONPJSxcjHT%w>*Ia^^KZEosu^X$~lwy>W( zFF712DnJzZn@na>+%;&QpN?EO4D6^AK*mgViUW+h^VcA&VEF#L^UP_ zUE5}n;SqXC?}5;9uq2c5-H9koIGVBQwdRL<(>z0EbQ-;g5W$57oM7u-E_A`ZqK?1c z4&c+^O>;lW=CR(?3lVB7IwSNs^`UMCOAowPoURU9wM7g}tVo^fi99#VIIf(L?wZ6$ zDQ9idVA0IMWWusT65?ezZsCx{B*qj(5{ zoJ#ucL+WK{aIno8we&#AYCYS1KVPvyQmK4wN&Eq7g{WHCol^M$2SSO;G{arCF13q* z`_^rg5_+x6Lrc#zcU_7nck&}~ZDuK*vnV&nsEy}=zPpi}j{6K7#cFhEZ&x^K1Z1p+ z$Y-wn%z9$S)6{WQdMv(Z*A-r$s=fIeV%W$x9yWDcGYE{+%TYoN()P z^T3*YrM5q8%G@rNZ+uoCDfWu1l|$*z_-R^PFHwA25xF4MMI!`jD@+H%w;us#UH(&N zc|3ib3NF>pcZDR~!8?H6Qj zO}}vME8y1r*Jbw<;nS6$61F1|Roc4Fyao0+&g2bZbv_qr<~%8G$&wA$aM&A*!X}dc zMcQuG-Ihu?G5|aq&2+1Bw4zk+y)pf=7lL`CZ{YJj^893Zs3?-%XV+pK+z5ayzQ~qU zm`-Odn(DZX5wGWIN8EMVBCrFj)o(nJE6m#P#wex}tivO0y0BlM7iA9Jevl6&biz&` z^X<@~;IOJX_SMs#TnC+JeQVOWkA+_n`-+1MVBlJ05Uk7vb79gXOQoi3_EQD9hi2lm4dqGs># zRfNy>3h;yMGG#htjCvHo%O*C@V4u^0^GT;O&PysQ^RYI~VzCZLvOnZa$?$qrc$Qkm zpvuU-yZTs5ZnT2@RzoL~5pvjhKPG)ji4UVFt(&SZG+39w-S$;rdA!i3>Cd^t7w$DU z4s>sZ#G~D->$7*)qIL%)DDKsn^Ga)*Av`@Rfy6dlNT?6HFznrBZxyyv$g$`Ln`UXi z0u~rFSwhLkgeS;%=L&)BA)B(jnaP|;+6NO<3B)urI-CRX@|n{FNEz4JT78P7=sl`6 z>CB){(uo%q%Q&!uzy7k6BKFsT&2B%q`m7sY*;ETB?of=W3HLCM_R5Miq()?1dkHXL zu6|yoDQ>W+&fFUAd{w0gSR+EBuZcs9|4!4<^KxrALaf6r4oZo|Qj#Jq4^QS~g?-zP*vW1 znLx;c6o*{OEd+SNHrj1wc=N7y@INn$e&60*_$)L$YcO`@f4(Z5g)+cEZ|~M5^2iK| zvPgVvT4wS=Ta-Sf>BTixptfntuO^UW!p6bZj%x_<9=dfCm0R3ST-%;)X82Cz6^-{G zU0ZPES8+liyEsCYkBj7E+LG6b->sC;4u{$f2ZJ%FM!zHsb`da}FogE2Q>Vv*Bilz^ zMLO>V`gnW*`)W6MK{&5`%(w$_8gC5;jlxH3m{CqBXG@>8V)1ETiYpnnJB!mRx$5_z zm2dSf_ku7}u>e0tksCd?sr`5PG};CAbHr}t2DfNtizjq<_PFLm%WB!C z9t$P6i?BK~AM^TGurKF!UO#6$uW$Z1o&5Cn)gMxZ_blBHjXx1eR(sR^LBo(dER#-W z9S9NA4epK>V9lEB3&wffCIUsuC(NV}liv5ZI7H|!VL{~jK8Qq^f?ZQ_UQ&;}`2IlF zNVnT`oUF{0253PRxcxOw2YZ^Sk@y$ZWU)XMUzD@N7q@}B@DJh~Zj5As(HJ*%Q2V7^ z{triL6JRfWsPvjD0NsWaw2B}G(+~=0dO&ck%EXBb4N9TIwvxjbvE|zejEwxbp%Bzr zX^cUHF(FoaRJ@&@ePo`3l%OINA&ykY9}a&IJMKFK_5&1oyKOIakOrMkH>(NsS@@UQ zd&u=9+_cs82xgS$K}sDqL$2pwn6JrG`>vKWF}{VwVYzS_L50PkVS;dkS1|l;-KP+C zu#1|Mw7s6RP~1?}zeqxHDRwOD*HC@x9S68-Hvj3og%phrW`hE&l^4&S|6e|F&D}s` z5qjj>WFU2-X1513LKPzjf($D!MDq8cOf>+f);^PC8alX|>s_yFvwpRASt-gU=%wlO zkP5fi^s;Jh87HnGkzJx^H^$5Mj1+V_f?HZ7j$FdUY~4eT?gnE=lPbIlU7z zy=sGJnlAq}o1AHgzDZv@-*x@qj%e6;D!DTtWmB)t-l-fMr_RiDkzJeI*6}pgXvk`Q zF!vROSFp;Ovc%kNLoA9*5)i)r*?udPkf10ck2@I#Bzg1|csG)2%FsjZ6xNooj+Lz_ z<#QHu@=z`(8p_{6c{%f zgh<={&f5K1;iq!ZoWbSOb8w5kbAEO}vOY9vw%}o%7rJkyiaE79VgAkNr5upBI zNJ$r0b<>}hGu#+9G9BKBIHjXaFO zZkcroX;anK`yF~o>YlP1X8q)52-}zxKh^4@Tt4iNSK-%`OasTlXVqP>}Q=GuwIeUOv&!HwwKoHu}Xt?bfa-FTXUe(A|Yj(T> zb3X6-o>pgiZ8*oEr60l~E+8ZMt8OpRyh_3^B&i-*xa{E*MwsFE;qU8QM3v>H24^?P zUWJ|20_~aO*p&B>j+s`Fb&4&kp&(K$VYNu22(A6{`E!$~6__BcBBtM=d=efGItnvk z`C`ec{Do%A@ARGGjHEmIGMYgS9IIwSx84(ql7_r$qv7J7O+uBSVqY8<=T zF{0wmzG_Vy(~j=Gc7!56I|MV2;KsCRA{hJD7>?;JJS*(EQ>gVU)XS=p^Z9LAXJJGZ zYGl#h!`I!+(pGWv;P7CLi?eK@6+iZSzYm=FLYvEYo^g3!2=;Li&8dxu{sva7PAYqf zrL`;ABHE|5z?0;gW|*f>+prtou|9onowRD$fPqJ*x z-JF^U6nvW<%_z7yqFJMmE2t=94zF#H9)kuOXqQ>lknqi4lUJ;B0{av>m%*FX@zM3| z(f4(@PA=TsermKjww?;HOm#_27t{tio6OquFI#d(Pt$y}d@9|yc%+ix+nrbsn`+R? ztnG#D0ZfS8t(}g1?fya_r3tZu+lx~x3)^GspIpB9{j=LIuhPeU5vHAM-GI8P$eiX! z^DihEn9sT;im8+P*swaTvFd|US)JoV1> zw{(G~{ty>n5Xm>*+OcJEe&eze_SLK*rRU}@O`a|fp)WK zZLN*o2%C85*LXa2G61M*Kw9S#&aLI*wv33rrk)*9Wb;~WC;4uY9+Y|OVK&AZ1ZJCY74ZK%YD28h$?6egGlDiPR8nkE1 z%dSeRc-G7f;nY5BHd`FALeLJ)N3W9t+WxHDns3`iQAJ-zZ`AeukuX^y)+#9s5oUGD z6j}p(VVHbh@je6|!YN8c)4*+bCJ;NEWGkr!T{LX3d5%~1wp#B}n3y*GKbkIA-Iq3v zLDpynIsBy8@dZM?Gy|k^8298Ue6E!^Ed8izMf$owLB@BOrBir1`SFh|8-5iRd)q1E zdOBE(FJ)q^C#ddTXp>KAP^?$_DY-&=11VW>1g^t7U~5{XU%bxz;CoY9@KI$3cNd}# zm>^@mxAS&)M%q7ytX%;Z;Y6}lH9`+Hr>OEFClYJXW=C@70Ja&tG_H4X!4eY9&p=Ul zP{oJ|P61e&Ft05e<)uM;&7SxPlqAyALf=OzCRZ=5l-U?@zYLtiYY4x?FQDq*-vEhC z(}5akF?nWhyV5L0@dnKAkXYCBHJ0s#<-+&^paP;FWL0P%1#1NPVQEh7p)LZE*K7u< zoV95`G_n|M+9)ru49qu~?sA$PZcJ|i!I+?!QGc+ktr|)PS`#>BL5)_DZ+?6`@#5Fp zPBTK#p#{OEtp$;u+>x*_DO4>2j}S7%PPB@99Jgm%FPlQutd>LWAv3VrFgc&*10|&` z*6FOuW{(7t2BO%*NzjY54DHGam9j$R)N+e3eHeQV#~T%Ftx|u$>KZ#qHSBu<557KS z-6A+s^y(Dyw}iDL&>p{CFo|I9N#7431fBcYT*d>4B(b zy9ja|h^1;Poi(iYix0p-16MXw;?j=o2u5y3s`^3ZZVye*jgy^-o!pyO2mvo3hU|M4 zwoU;ej0~xq;cmhB%aEmX^V|(J_STC&r28`yYNeERN2WxH_2M7a?M_~v-lM2y+%BkW zg^;+H=Dqgz1COONb&bas@`@Grv1;3pru|^LE8NMUqDoz6Ykk4_N5Lcj);i9C<`-aN zyEf@+3bhOt2oup)n>O5gsDa?gqYk+5KTuNOJ0LY%q;`Jz)-Co+7ELUlmURZbS!{|q zKZPSWq8R}B7%nK{Mp82Da#$IujK1&(wM#QOdB$PFGAo9EWhDi>kSSad=%9(z3Rz?X zOcSzH>|p?X=-odZ`0*>fG4)t*D`^BlxW&;luxoRPXIcPqg+%8=HMed~emxDnY2R|nh8o$bcBD^G!1$x%Fd5yEkaZ88AD&W{Yuf#e%?#QL z^6NK}1s@5mAyPsYH%)`9((?0QXbsJUl4HoyZ1!bCpJRE{&MP_864>3=G4xJ!DAe-P z-d7!t=@Bm5Zt@>j{=KJjY9k{x?7g3=xbWLwQ(XAU6c=1Sk!Re@tVav$Y{^KC6mN+k zwz9Y+ae^kQJ@)%r%5Y{pw;V~cptjQhe%c}#I@O+!Vv!;E(1XT*4IwuMNRe-^)Fj?H zok~rwhQ09-1=;~+dHZ%%Y$Kk2fYLiWo>(IfU%Om7UzxaO7@rM}i!F6nwei%Yn+Yd%o#GylNnnx4Z5M`pN`@3)0SVF7 z#^fL&$>Qey7i4tSVss#@!ylg-xkPoJzJUAYnRGoF8ww&XYKRyr2pt)& z56(8W?Q@-n8&p4tTX5XtHYNkm_{1RLw{cPC>PU9~Ffd)MgsEZIeL`UvLNZ z@m8OLklZK~M?UkEFT_?9(Wo1D;N*ocX|`s5?$aWjmDr`Y2#UFQhq=8l+ni#4)34k7 z5NtYxuukE?R2j%cqz`13T%J#h)j2(3Q;M|j(ZpB}z$eUL=Um}?GvqaVu+aNtc{w}O zk!6oe3*SAkqO9v74+1XB+|ZC=dkwYqod7rK09OFcedCNg?Qbfq(+OR}Gy$Svo37*b z;)-cKqtEku@d>KEFMfad!&O)?@I9Ct?^||0rlXF`pI&e_krfc#V6mV;29`c3F)xd*X?H9 za_UM!E4+fJNO_Fw&IL=ko_wQ#SWQ4tGidO^gqOVsg1|7L)0@4#A0gDe@Q9IXKtrZ$ zifUUM!< zut+_5yRE6^{jKWMC?nbvKbfTehyQu=!D3be8hYxVz9_3`V9|0e*!OC7>2qZ{3yjV} zEaF~lSoWw{_(5~OUR*!17h%hRD!3_jz9~#7Tt_tA9?3L7sKY-IG0Ewe>S>lM(Pe(y zZd6U+TJE4yTJ>e2OA~NEFpXuG*$Kq9!6 zg(kF!IOFxlYC~TrkFF5Y7KyoJ$q$nk&x>ST`#32ph)~R-73e;=q5z^N7pF>W`NQP$ z4c-2U))EV^8WQt_&Z?& zTvujD;p&_zn@Ns#CJ}X=>)*T4d>zs8Gw7bfI1ic2*3eb&_$fbT7nL7N3b|gPhe90n zLISJ-jab$4kVgt@D#YOljq=Q**I9^09I_>v_Oe*%(iL{lJhfvF#C2F#?Zh-mTOK76 z=-z38TiVBFRo_>GZq^-Fqb-t~7J_&2Se~A^&u)%xjI4X@C44wvTjn#TMTh=dajn5Y zowvtYrdzI!{FB38odCx$$7KVlfn^YMJqKs7!Q>YiF=`-s$wcdSGs1TAd&bhE38gd# z=4p|oFYXPAfU7h+qer$@OiUlsn~Q+YS{jY0n-ATgRfejfJtE)Z29glLZDHBY9Lw3n zcO^m|kdz`Lui^7!l_pL4|DU^1PU9()^jJ9ufHfV8fskOe%Vt}25-!nHrkjpX6S1=K z(y=>+xpE3!Jct+$1Bvui`T3J4uYdaEe@(vo_OFw_-v8;lca!@cC-1)dcJh~>-oE|&lP9REYo}t3RggAO z+my{%6Sp#Mp>tMZ4txwNh*PSAb3f>C*sO=0_hPhsWYcgBUlaY28dN~#X6)P|~CIyzC)ndX^rv;{kn+YXEu;goX*c!@DS*;xuEXfw;w;2S#wC}=b zQ!o@ZNeDD>hj1$&=DK3hNyC6`MHu_mwza2&>-lfo>mKJc-(k(!9nA2!|{(-C2&um`!G3Lp7TI4r^ z;RMiH`U&M#X}Go3A*4`7XcY9h4xIxojE$I%cFqwmO%RPU7{9n#_|4#Da~m_uYrVEV_P{Hv%RsIs#hUve8}1E$niJPC`RgmkNscS=uG$`w={~qd7(h?grAoCm zNlx@#{JW87kSTy{F}3{L!@raIei1JMeT%oIuyXDbCz>8-^2Dn4u$0nmwNiQbu~c@T zV>G;Gk6r+Be<@TTyLM7ERE@xuJA&*f+&x}g0_4D|)19-P(%!f;$4V|M*p+;ry*Y7h zhb}^7s(L>-xzbO$PZUV_?ZhGBqD88j;XWQOXAd6n(cUI=@7S00CvP zPns@5$&Q^I|GaPO8~DH$`~~L~6Xr~->{?{Xzg25eoN#GKlH*UZyrE_IYk}(=1A_C- zXavr`8Vn}~T=~9sT!Y=K9s(fCQGZ*i;;ksIprK_(DQ|(eFGo!KalEJ#m6`C+erAqARe$!~N)l0owT-Jm`0%m11 z0C;%Y$$M5SP3@q5U*b_Doz{5+U{dGgupz!Yrptm3?+4P5*Z05h`wG0l&I z3ll49SP3^DWo2%a5(r^NWDIK(3G3gIuk{Q-MN|fe31RM=bR|@fJoj|CMVgT0= z56Nv#N!Z#;BO~+RDUH2C(G_k^FcJYvqEOkjU}8@PiOqW*yHgAG>?#hs}C~1}f_e zoklvT;BFfGoS@8Wm5I>5mgnTBhav2DK6H*vANZrR*9cKnsS$h3>JvQAywRG_n z#{be;`FiL|Juz)iChj5iE~unjXL1mq*&`~`4zjR~OZXAwo*6drmFS1Pq<%Wo3K1BY=_}jV+!$3H9sIE3z$mJpQMk`-D_N1c4P zqv+VsiP_)~wHVpEQuvxBRqe&>;pd`*_6J)V?7N&4x!utD)A3JKRJ*miF$w zL9n@4qn$BiJ9olimrcE1oUT=eHs(A3q_|A4&5@FEOgI$~eM~mdVb%ATI!o+>mu3O; z;_6%&T$=0H^e$Nd#)r-<-HH%P+r2n-SroWk zt0xdUCdkd^@wmtxOG>NGbSCI@iKP<3N=p0EBKR4S4bwP7P=evL!@ypRNMOIGj*(|r zi|ttyCP&m!mk#Pm9re>rnI2050xD*bLQfNs%`y*+(taFk@RPvPQjVk8D_XKhp%{X=00HH13`sjFO&WTQ%Wc+J{^Nop`?J;CkuNh@p z-eIQ%rvB~y4T8)BbEzP%F+S2OgX_ANC z${67+m{6-V$Oq}fVsB9WG5BA@656FfuO# z491NyyWP6)3A*vhCxj!z5AafPhL}j5QyEruZb2cay7)U@x{G?SYRr`^mDscr0JOcn z5U5?}0gP&!r6+`yE4FuzIpW*7!1rrCO7^k75S<_du+?z20L5vKlS~Xb^=i{FkG>m4 zg~c>m=`zm5iG{8w<NaS{S0VVU?1-TZ-8>E8GP_qL!5^ z*L}z(3==>Ppx$`-xH-;~C$C^617G9gr-F8$mnHLbj_s-j+MFC zj31{aA|4E^`F>aPNK&!9VA?rWC@LO1krnkIWo^6~V$&i0%EEYpEh~C$DAB7w*8RL0 zas%$vpe1_gww=wbfOKC@OjE%(%ixgkwauJLe0*{fVsy07lP9k$6@8TBrX3L5s|(_z z?;v|!$zd0+akKq!=DnvRkmJRhby?J*aLqHb+NqhFiR)H^rpj4SDudV`hd_v8Xdzyo zh9Rikq^mgEnda_MBkw3m4p=*s@CY>JN=y-dxHLx82-WN7;^VUwr8feJE#pj|VAQ06 zVe`^XCmT;^UENvUiJAu>Zt<7aq&6pqx#lkuisuwt_F6}p|mhp!JqC(yc8|kG(}PlDV9c%hzFM#u zUm`~V9-%c6x2UhmEvo+b>|x0tz83hVG`KSP(x)P z)U`|Eula50K+kHBhPr+PhN@?NZe`70KTLTMMN%|-85k=%GvrYOtpaQgkj z!`jgOjii5Y=G$&VYASsf8Fh=y((dTgf@6-9;MT0hZlAsM?%3ILs*q|*+O7pa9N63J z#9K-hIWIwF4*GlvA;u~sP-hYlB!VRZ8YMSrQq2_dG8e-lxZ^WHb8Ib~FJU}fpYqgW zilXgPEW+K~AJ1NK|D1XdxilZ3Y_psEi%s$5w{qT7?_7P1R2~$E2GwiBnp>HUre+)7II{WE!-J z4;Bv-F7f1C?FP5b;%1==TnK?=mjl%(zsns7+)q9tOYLvY63ds0E=_bvuAkgzv6@4N z7syCWa=YxWR#B(5?MGXFQB1|#l7}**RY~8bgHqGFxHC*Kz2&pT6t5@yQk7+)Mb+3S z;x}g38tPnLl*Yz3n8r>~<-9VFuJI&0-!*JnSqm85zkNGjxeBUMIfzHvT6aZjVwvzp z*;D2`4P47jM!C+oIfM~wK zJ=N8vAiz{lZ_06G^LTcNf0|PGbK5@b3l-@}SOqa=8xp@v&1|cI+$}zL8G;1{LM!S< zt7@~UsS;YudhJg*(~noYssSsX`u#ige0U$bjI?z<5O?Pbvh)petP*ECI1)Wa?YLGp z;4x&CEzPpeZ0I6j6}kT8N^YGmz|W$xR?uJAx*Jr+bH}`4jdi-U;_ZO+CA1A+YC>p*7ieL^r6Y#RN3XlQfMko2QEc^1mQe`k=#5q7OxY zncl=N)-ATTd1a^lVvpTp23Mlsd9XObik2bjYx~>A)lxk{;ETDw7QwbuksKTV|8t!| z#oN76$Ub<7PXuYc1dkGdw5P1%QcdbP1Jd&0~5N{$0QAHOl;GtG+kWWh!$21wOc|C)e$|rW0Z*M0z&a=fn zJ3}=51w!OZuhrkwE%_dY(%-gL{1eYM9X|NeYJFt|2 zy)9g33Yt>Z9C5b%Z_1{MeSg9I6GDJ^myti?xSGsukW_j6PO-pm#sYKy{nxCF2ku*L z&S7nwe&ZclMJjb{+5*4|KH#Pgj^|Jl3Rb^s(Ms=Kt4>O7Dh<}M{L9WF#6PQnQrwr6 zPR=59nq6_KwhCT!3o?4L=Jt_HmW8oV(O`NW#e|K|I!UyYFUObLy`#!Hn&9rnpi2NHjQnDwM> z7Q>{Y%a90Gg^c3bZV(m9|HS*+F1Byy zGCuQf&{NWXlh)$W+c*uo&araun}uyfa^a8(>?x)UTcq_>id|hoW0v$`@H@)C?F8CS zBUXPPrAqt^x{w$S;Dh5t!@id5wO{zs+BX0CSH)X|hqns=R?;KQu20fLx}JPPNn!gd zrjJ&gT-DXqnAaF^6+CzSey(zx!Z6a){)LiJSeG9NmqvX?I;^i0Jg!~AE=KX*QelKi zbU>$a$kb{EUp;&A-1f`P1fR4hSwoDA#1g3>{!jQE@T_>6sp`+%?ibc@w^HJeUX~O9 z)|5kut8iL596i1S1H6@VjW06|3g3(kQhph1Sd_{t2y61yI#MiwG^Doio)R47piQkA4xx z@ya%}&#@NpsK?3YPrhDSy(7b2Mp_MDg-G%@9gitgg7Zg!(VEo`-m->rZa_6|4%Qn? zSWQA48V2TV+7q}j-@_g$rKwE6PEoAF2=V!sH846}wqg5F#+!E5p)Ms9H16N`nu36D z3b+nB+xu}LUB`~H>Y|K74 zb5gnt=1p$`7&a*W%_p6foe?F|E7p;E&&@}Z0-l`iNpH31#5FD^uFv;<&{|GRKI4@fEX9%aZd!~y){ zH5#66r>m5w3E7XdlF3meHS3Cb>5x^?M0o>444f*Y{CZmxhGzG6I29;7q~?3xR=-r6 zN-}!@x?ERsb{ojkuu5jO(M+dMq2j25oPl^SApxY;6sd%Q9>>$33^zl_tdQY@BSm0t zP@xorvcKx4O#wldrRc*t+^}c1*m&V2V zwt{17^rt1uFTh-Q)*66U#psmHTh*-@LoN2oNF?=@i(e(Ap~M zh1AESfbZh7c$N83U^8Ucc2kEB7X$K|{9O7{^x90N!8~V7XWF0F!C@h(6rE(jdVpPG<=vk)>Pa&LX^nhDOh%@ zqb{rcdS_~DYl%pMEZx2zK0!x{P^N#}{`QA|Vt!XGd>7J&(pzPJ*bgaiBaqaX6UWJ) zUjO6PtdI%RRvw#P&$jDAA=PUW4CVsI4aFr38yKC;J2F%HLj0Luz)!m1GgEu6MHGN_ zc4CQafZayHLOLs(w9)lfvF8ePs0u#6m-^1IXB&NUu#hci)phxjSEkXmrIu)pThY2v zwTrhcV@puH1b`SK8*{5^`6q+Qe>cWO?V z%40NU7>WjvY>ssWiy;EYiNv|0xs-&Cq*T0*fAZOk?!hEdjqKA2!G-s*}% zo6Pn1>aANPp11bs5>0y$#W)IF1A=-$?C*Xx*1FR+Vh}BD0lAH9l@9F0cL;xXI;n=v zc+y@V^>!x303(ymN+I3+{qe@&9!y*?Lu`cPeFB}Drfus!@JlA~YiodH4lM*hL%eco zjYLrOsNzfw^M%i}wBx!ou2n}v^0SaC_g=rLHkih+$WXY)Y@?da$D^hwMUy zslL|7P1C?-<7!e9r2YJW*;@ z&6_O?=(9R3(9%6Wg=cQF8J^yaXq1RTJT6>!@H$M(XV_L-*D;!&Rsigz3QoxX#>?P5IEHd_kK*K;++U>X++a%9;kF}o84-W2 z#6X_9;5mbGmeZ(j?u)G$p~C4+Z3P>l>!%FO9bcP8Qx#77gR2p>M3ek1#F89nWjC;r zcD{y%a$8t!3mWeDp;r94dwSB0ihUL!GDx=Kx24t1qOBHyA3yfXH0juGS9EC=GWYtJ zf%Tm2*4rthuIR1S|YR<3fO%rO^M3*_?8^+BX$%w z`CeUYtFq+p4DE!d@YqaKb0h%UwG((K1#~yL^yA{iZ>L^%zkPo733b}nm$$c9lNVnZ z1SvhjLyPlt>>yroxo}Fk;}|Ev5BTfY2`HmM=KtBJ3k!173n8GiMT|uOMb_rYe=xs2 z6S~#7plV`fToH0XozRN@LFOEhGURw8QmGgyLSK4M4k)FOu#DrdM$%8k_7TLZh6D4&b!VbSMVOdLcjA6De$OB3Fq)?W9Pfzd#9mZ8k*2Tx2w$o! ztX3FKI7ZTp;PmS3CKE{NS09*S4oI_*>|~9@7uf)bF!Wdii|}x9EDrtA*kH;oxhv{uZEhI zi%&cFG&nvZ9!0(hkKMSMH8wlzk&N$Y8goHP&LcK{t+6?!o|kX^F`>c(wg!Fhff;2s zoC(?XuS-z%ecBSBfp{lBW1-|9>i<{qRu&`7H z7eGx%o$oEG%s2-gNyabTOtlBvh^MeLf4c?8o>*m%anP5p6@>HM-c14tfk9*RGBdFg zi~1>=xveEW<;#?6yVZm3w($ySJ=67e7lPsHBnW#!r2(UFl`auEd!eK+GGRH=DsRgv zTx{R$;%0$LblUfrE;2wrkTF2j>w`vL)f$Z>@z#G zy7$tFDg`(L{AYS~&Ykk|_wDl+&!46LxxKaokqr(TW1bO^EXAPZB6Dbo7=B-@O#}HE zrr~!lpEEa^eEGXC{L(=t=~OXx>RMA=jMsXZMs5aMiv^8ysM+ac@eeF!Z&-AVAO7in zGQ;a{3K2iL$)qu$5>tN+!OcaLwt!|=-chx#`i;S9)&2<6`r!KO&d@n7s)TJJrz>WW%%^U7Q?7?5_6Wp#Gjp#}Nw831fX(H0{f)-ym92VqC zu-#ojMKHbLFIfp+9s_T0UA$RV`;Y#xXE*APVtSan-J((u5%#Rhb%$1#8eiwGt=m$B zwAmf6O+(esnIgs?zY) z@3)7c-0HGeX7Y@`o4D?UKSWTd7M+JBm=>Q{D@CF7C7_?xCOtv5j;Lps>uD7fuHbyW zA7rtU?oTC=zG?a};_q1TVQMye@`M%H2n_6}9$yLr8)v_(E|i5y}y7h9#cD>z%$aY*3}el@>-bti($fi-{6A zYwaF|h>^hB^|l$hg>g(bOj34E11Q+k5y}$E@9o1f$vPVWCn30mfAH`WUywu{_j`sS z4qx#-Ux-;R%XN*=K+h}Ee%C$_a55u_dzy>PwCov285^&Z&S`C`_A{?)&Ry)OEHjS6 zns6y1( zOp6_L>yK8cJz0R$iSUvx{fkRA8>U6jpBK&A!qB48};RhTc8uFa5kouwd?xp zQt$@cU9|x@YMcaf=tgrFdR&6yaXMd`Q+40!=GgJDZ{ScB?sZmgV3_6`hq7-mtGi`D zYEb1s<=C`+r%+Cro{87u-%txOxFZX%%7fBNV97c}flO+kr~@~{D4b;e>FO$s;@omB z3bN8j_8l~vS}SuSUI#rz&Yn{Cb!w|9UNd4YH8hYDvDCj$$IqOe(ujuAtG|4Ww$j^O zwb{y+z0`ZNi3cg`dY~c4Q4NY`{6bcKqX+U(QA_cEe<^FFeIs)=ZI(KE_6(W`J*Zu1 zX;y)xHJ<}pd_8%4AoTs~24Y^@3M?-JL1VhMX-cGbg40uQA7$I3%&_HZ4UF7$%`XBF z;bVHrfU3(YHdaX`)@GD`WD0SV{;)6N#vLY?*l*Vz5bKvSg0T_OgJPRz z20eBe|Du?>-eW7Xg6!qH4knt+YJi&M#+X7EsTxUv>dJQpGnB05gX@+p`qok%u9b%X zL_k_tzXcL9-NnE7I{j~L+|9+!QDAAsH|V45X4c}=xkGF&qrGullnIo%*ci~G2l1#U zU#GD^HN2|+1mOU;?0tmZO}L|b{dgD9qi_0TRCJFczmM`^`;A5RUeS=>1OTr>6Su~P zVc!RWJg|#!n%nWF?8ZrXFU=6wS5fWV%w$)}|O8FqYKvzE?w72&D4QE!?nBY{!E?)GZz@R#h z^NKpM=1@UOpaewX8cndwSHneUd;~Uc>z|5!@`?>i*y!G}?AkPe{!XPU48J2P= zWnl6{{9ZR4P3MmJ2B}rC3)QNw{20aP+nt?YY$p?iZJGSUMa^u%M!d zxadU3Il6^!Q+z)&jPfx^fu+gz5R1`O@gaI(NhE=J%gOBv7B32QPoMdi8lfdxlnXfN zMSIz|%(j(ZbLGL9uw>N^+ANeRG<3NU29P+4)9A(ph-FWW%N!_>b{}L5)5~2iedm)e z+sYv*t%^$`erZ^7h~@4Y;b%IFO&aCJ^_N~Yvw8`G+HO&bHdEI4iP`LOu4WRzJwsHL zC($O*Bte1#)sNUKng<0Nqn*NQ_=g@lo)}Kpw&fdOJ5FmHIRbo5{ORAsMd@GWtAksr zrFPM@#G|Hfr(w%>)mK9SSIs?XYkZ8D(ok>`HUjXC08X6hTIe{R*ZmIrj=tj5&@UH; z1YzHz_PU6#W#1I{ctJH8M1m?fzo#6YyF@<>7s1$wuV0ye*a{OcwlX!KxTeeAkV?w$8v}?6X94u6>c6a7v*HsmIQ=Edf^mN1+N6IM zLNaufh2c)dz|v^G^#3uI{eQ=LdNBSH)i;c=Mx`vI4vTuGm=x_28Fw_9o(EiL&CspT5YXXY9}XU8+y%B4jVVVn>tj zQ$0?(pgK{1=U*q7LNrV80vuUYIo@`3kXwWsg<*!UaSbh}EO~eSF^hHW^xU|(5&wge ziuZ3&)*;}qlSvJFb#u`cp@}*7!CeMHKx3L8gmXq!d5$ zcNO>IH4Icm(wXY}f7CpW_3q*v(WDGc9D%yp48QgsPH|90n#On0m~0e|yfd(z69NlA zRn?WG4XCyb=MIIEDs#FmcdbKS5KcuJc zmD`h-U+05?-j46^%05&~%I|enk3>wlNvOF|m`_<}uo#Wvf+FlZ-HfGT_=9Q)so_zM zU`u4Aj~y@1Rnix#J!eAmF+{z+!FMNDIGrUqjAe~seJtc%7pApug%^Y;p9F;Zz8E6= zwvJr2^dT#gD0=!(uK+-|Q|Y@#A-ATCk2B`t{&@B`wtZ1LIa;+v4e_FU@s zGabfpH6(-6d^%NG6O9uexH#jE4U}v_t&*t(PpJyZ!*#VtFQDFqi5g4z>A)a%n9cPY z!kh+kNyLfq$tDE%-Wtr69$Tf|uK5r=XmOlG+ciy9BxQFQ(Gh?DkK0=m#W0HhxP1Yi zyho4qk=C-MZI}Q1g)5O=N%W;7>YXKCR%Q0YXM$`LHZ5N2vH&f6sjR${#jz^*!~1sp za7|x4-U(Ad1))vnP9@-0N^ZW{n1&2Ad*$x?j_JWx_$XJin)f7b1Us2ZubJ9IAP zU_3xRq~o`nJX9e(?y>c|zwtt(qYm~q$L)p+t8rAjlOB#^j+vP8FA&H+wH1xiYIc;0 zU>Uh?bwBP)iwDzuxm=QPyROo+^Z<4DRXYITRjDxs_{Eh?-<5N&tuoh;X13isO);IH zq_MJTV_vzVzFD?-iQy*uqE?TqN7Hm%IQP$6u*oH(n?Fo`pkfDs2?{of)lS*jMfpvp zBdZ7D+QHF*&!zKVHJu0&BHUoHC^0b?eRVL;W0sfr?1N*k2981vT3yB=kJ4sMU_T_WqYOj#{0mAGO}#FS1idtN(U+=oFRFqes^ zCwlm61RT*@9}b3Z3?dWuz|+#$y$s@fQ*o()p$5V+;qI*2=VFCx=au=POv5bH$d5W*J~4s4 zpH41se|z)#svs|=r@p-X-OUeI>Pr<_=dZC(lm-&go(&bH{uO$`gM=!fAx_~XZ(IFb zlg`QmB>gY(1}Pcu=lhL1>_c#wWC~wv+Xs}@A;*%DP!uJKNFyNYa_K+=)|)&NVXVn% zV?GDz{T8@=K`a8cwQ%AIrvN3R)3O1Bv#@TErPnWz#b2(Qem9jr6zM6(Z-~^`(f`~E zUon2b&U`<92j_ziExy@NYivpT$AP5+3bUI7stoyzh03_J{z$xD6)-*-v^0xc88s3F zsaHk{;+wMC&$-F14nU{D-iN%)46;=VZ-tv0Y19m-i0PKhWR4-bcKswz`a-{Dn6GLu zt?wq^kV2mh%e$0ZN<4RbNaIF+Gq8q?jHaH2`RGA(_5|o zP=X;+PW7<%rG+z`&uhmTeazN5=z)J5kh;HA{e$&h2GZo;a4I`;W+)vw-KFilCz2CS zA4*IU+<61Jh($j5u4XF2co~_RlMcGLXS*kDHPh^nX!X%jC&{tetV6m;LL>cR1Z4B3 zD@@d~d)D=n&p%gsVgh?XXFzb(zF*T^?g49D4OFr(mQ;nV!F(w(Dpm* z_RHl+8-pySK#dn2J)#<$B_%T|QL^Kv&0(;^t*o1Qvs?R%mww$#Q<^9Qm-xP4ex*sB zH7?Mit3LwKlfDcqS(DSccIB_G4ANp!D#9ipg@)RUb+4TRbeSO#8`RKi$|rBrCb;W1 zgH4c9h06uQvF>V|gcZE$dAI^HyQzf^rK1eme~TJUC&D_fs+l|zSljYb079&8Xo`5m zC9QK7-aZVT^Ub+ADXVrIqwtw=J-Qe~KAC=eWEGc1C=-6Sh4dsX-xsQqbn9B%3P?LX z({Iw^;h}>G+pCb@W6mx1bMH%X%6SOIMU*y-EuqQ#A$`@|lUqepY&{;-umwgwz2&Z+C&xnZ&9DxTkAh>ecws`s2FdOsrtOhleF26(Fb-Z^}BR`e8 z9b7Zy$&r>&4=VE2yNSuq!>I;tJGtp^e(w79;>Y^n5rgPHd|)2Om}4NIea7RpmpjTr;i?D{CB0+h@ZWmr_J;8xI0R8rM^ao;q@o&>nVoE-k;V=>eZ!v?YNIi>|CB>}ekt zy40MZ17yOyL+53JbtU`;0;?-80r;W9M+S?jekKNC)k<$K4XPwi{JwfgCGX|=Hxb7)~h`!)pZF12=Fs67U3mWY!)8b3hhT2_xEsjT7 z8{-T!^~SwVhBC~S3oHTFgAkQZxw%yJnC2FnKL z+pNxXP(s{E+QDV0qhYyeC8_~o?g)j4?B8(|s(^sg^!*=@l!vDtXF^4%Jo6OA_L?q? zWAw7VCNt5smYm8CK!^7g+$3Z{>pQ#+ZXVpsHiqzh$f`k^GVRc0-*#t>^l&m_!o+5^ zNQo!-9G9}4qJV4qJW#HMT+KGaAQ?`svwy49)R!aIQ zax4JMzSs~iTb$!Tm7g8+{7kp-kK5OH5r@4ebj5hho1%Zf@m2*=uMm+six123WGjADY}6>b(kp z?Y0mQrp8CgQI4){Lgf@nz~GUdJo&4oj1nY+P5V%eN0FP%)^Or8<{bDmuA`3>gvX&$#uld(@8;&gq96yG(F#!q=pvu$`QEcvn`^nT$ID1;1GZQD3_(De zA1F&${RrF)@^c1b0EiqNX4|Ufali3OFQ*8%B(`<&{Jf4xwt%pvE!oN|E!Q5(5$Kk! zQE=Zuv-y`MoN7g)u@{vgj~-)JR`Hc9%?OjBYP5jRC%Dt173UQ#VVa#oce38N>a&E8 z@pq)!Y@PK1Pi({P0+dr0gf@n4ai|u$QfJq@_YKmc-tELy+Axb1GR3`yew`yrcd-<) zuOHn5)%*RUi4r)(yUA!!X!9ZcaU7+1o}jE2?4UEnHQN{Zqe-_F$naT2&ql@4RL~S5 zlKyKiay4e)=j(v!lpiU)A)bnGZY$vGfuA4j>q_9A&&cRnfuyl__TJ5tEo1QsE7QzTw{?#D(b*S)xRt#M7xU%)3hZT;iL?_X!z+4Qd;{t4HB zUvXr3F*){#>FR1YMso)_6;5kY)3vbz>MR^k1T?U%>myNAA+QimHoyM0A(Ldy+iUa2 zLPtt>A$WFAZy0De=BexRwlL_pgqoo?0 z-u|8Loq}B%^Ck)YfQbTBQmJ&x=nmc8+LfD$C&MG2G(qJ1vT)sb^btC8!Z^#8=mPo) z)v^5O{*>i?JWy!+VJR{dXLtGQRc52_i+5E(9d}t#vC_`s8(`r7)b6!brjuJVK}?-g zuVzT2dc4yRk5lk;>pR&krC-rGu0~!gptGkUBWvNv#~+{Rh<CdMG*?rZLWpA&>=GHlY~;n{B8B zYygExI!@NctiUBTk8jc$!3vB89z(q$SS_AJ96L-$`!o(-*L5aVT7HG?LZia&Zay~x znZ>{*UzTkNYho3M5-#1%$gvjxltCd<;VD^)xWjHyI|WN7zl z-V~Y`B2J7E19qT_!b)5r_rQ}xPQ;o>;rg3Ck@D8bTQ=;D2yWJ0kK!&UI{I%`maR`i zfI8urm^#%jU0+bE1trv&#A%g-HbadIzSmcay+e6<-!h8kgh*co;X;ASad%&5u(~jN zaZy*#&zfWp^aDU%+~qTH<&b^(BCi`>_FJB>|7*|3D&Ou3uA?T{=mo|SlW-%|kQ9Cn zvotz4UNdp&0h^?&TE-4yj!cc}*3s&z{JKqw)7&7_zReK|m3$aj4}21JJQX;`_J*#T zoW9$3|2$pn`=OqpyU;UJ*9rDpfUS3*$Oiwd937(DDdC?RrVv*+Vab`K%4zhEMod3&l(jTB+s< z_{xnPTV_E_a1b#?Uv_KP2N@erj@=~#UT2_k21=wGW{H-{t-J|9c!pH_X9tLxjtUE$ zqf1W>wz;WD>KZ-JHDtP@_lyvMbpkY&o{?AO__A|7VGrc-kQOXeV^+kOuj17tUX>a_Q#YUEW+xv8j{Un6uONg6rUYxEaRlS|k4$0k*)t#8YJs9my(pOB zpP_hbaRNDq!d!Pz8>#Q^3doUJ0@#;j2~oD){=F{NpNr;cmSOexU6Ru+9u>&t`g(v- zobWXstACBy(*^L0t_kzTTc^~=>&5JUP--(lGE(QpmCQ(8x zL=fT`u8m-3awXFuqjcR3;^D&ze5{4fL^ERiiYJA(Ou+FUNhG#*p9(U0d*5{j^|7)E zj5Qz4y~?Uw(^DOQUnDriC7|&xFkaMmAqvET-n#wJq?xvn9&TkAQmCR#J+sG{Y%00W zdtD#3JeKJY^v6Z7uc`F=*sn-3#)Ws1=>FD2`izKa1N6k)B}RNuTE#d85;tbfd_5{u zaR|!qD_mo0Ah7D2^G6klMdIfzNBz}$=*SGU>|bLsj8bSi+ek^yXe|zGP}2qKD+;ns zu5+oF!90ns90Y8oR|26~YAJA5R!^OI62M;=TttmDT=}ee6-Y$RL>~dM<5@n53Z>i5 z2e#Y=5Mrk09uyy>i~QwY2A_;O5Am@BY!MkjH3tTZNSuIIOl zxfc=M(>ZmFJG70c3(^$9GWDUCzE;Ll)3;Y!&GD&bS1MZI%&Ys8cUodYcd~`kG3-d6 zeC-kgKSGSzU@+_BV7YtXScfB`zp7QxzX9hqyxoUSsW|*yx9Lt9(f)!2j z%0X&g2qUdAVab#m&Mk~fdo<~1dyBt)_7(raz}IYGnl^;%ScsajA3RgBs%maQ?{cR% zy?m3-$2$^kyO4QR9?tyMilQW~rYFl zeC#z{Z4f+Q3+~+DqS%Q4|MtE$Mw06~uPExpl`Pqjte0iEwU)IrRBzADkjsZ;tF_D3 zl1p+)hNQGs2t}#xu9+!KcU7~hduN-lg+z8@1bM)5632NMPV7YbVc2mJ2SyO&AsKKS zM1CUhA309q07)R(Nf5+<9VKzj_nmX@y)`qtOAfVS9vt9uxjX%+x^?fl=kcBIbBZeL zT8G>l$IYph*XNM`qi6NzO(97oMy%|8py={i%!3zu&)l`Op@M&R2ZU(1A0Ml-o0`hIvG^D)p9f}ggx|;2S4n$S2vb0(Vprng}0x=?7}L|Q6x!gC+<$A z&F1@x0tzPhimRGBr`tjHT4F8xT3c+(oyzjb`m(c+=p9k8#C#0dNxcvlXtvo17hTO& z7s)t4Fwv@|Qk;(82;HFgQVC5}8RRJ~y>IJ_x#alL9Zj2Ta=rtf#KCT%HI-e(Uwezf~&1-BEmm-@+SFAVO8D;_ubd~kq8l6(L~m5-F3-E6FKy9Ts~*G^$?4RDEa zKA?%g8P>1MnZ2)6Yb4SzB$&svKhWvn#0d`QO>Yl#SFtpwHL>Lu!6*vM zS#G@Xa1Ppyv)y+~=R9H3g12#wo~G&~h2Sb2$~(()x`;+PbhM_7o?QK(L?dsJ%3hg~ z*3j%gE{lo%LBxS*F^1T)*{ zWw&S!Vo7M7 z%XU^03t`ktLBGc`$Da75Y?#=qX0hwKp-sSS>5&mwKI!(V4V#HSjyTSDp+e=tFvETHBo?WWRXF?DXc$7Pe zg!F9l2uba5Lb$E>1kz|V2gPv&30Zen0*6hZbdib%mr*&N7op#P#qi;H#yNb3p0WX{ z#V}`FgKp9A5-ROQ))KR0y`5=p@7phw*wvjty{Zbc=xnU|aE%DR!_N^HC;>lcJS-AL zu$FogFbrCoR9=?OLF1^k8wy9B#2&&Uo8{U$Q}pWOE&Y@FzysK)-CY9Gk3~#^RirZy zHXoM(SX5XVP&VUA_ZZIQsq!9_$$4M^?1>#rr*z7!yo<%M3$1Q-T`?z7S;X6PDJ9zNky=-o54JsfQH;=a^Pmw-@Bzp1J29h`=1~&ebkZi>(sj zmibM;%IpY$C#u`gYR^j0ER|2W41Quwu6ylZd%A25X6_C7w5#EYFBoS)_c~8l1h-2g zsx4hi*M+T89WEJ&u{3BL`Zx9?M^tMPcKx1}x;6F;y%rIbI}@jG33fbOL0ZwF$dk&e zSh=!Q_G~+vxEjXF;B-aHe&ON{OYwPJ?r+=X8NQmXFP>%{cE&eOP3tC!vCWpx+n}&C{v*%5nO0 zGRXBUpOX~F1352mKp(vkkg#au;Ul);X_oy0MpLWs3ndMd6M_YMJzrM-EEctg;>irD z1RoWhKpD!XiAYz^fu@)P;i0}=5@o}bl$w%?uR?OwPA7@3-EA-D&%u}-jFVsU6cIL?m_;#pi>fuo- z%bI0-lFh~Rk)KsAG!gVjHP(P@!;NlrI$aY+FgB{Wc)aBZ<*~-|J?$(fDJxU=u!I9O z8ZNh)8^UQPpJ|=h8mC)%-psGD2ShuqBgsz9oq1I}yb9c$PwyIbNN;(s46Dj8YK~Bi z^4jYDu}u<_RpR-Z#nOs{k{-sj6S$Z$y-FxEDX)SOgm1JiU=#X5bjIYk1#9D6TZfpZ zIo<0LKqq|a+Mk5%*9CVO2qa{5mo%WK>%P}{en((7CiMrrTRpbO@cy^aO0;m57Tw17 zN*2dRU8nO!Vj)y2%*p09pDd>fqT<8XkJNyWj^Ceg8@oDI&J4ZAphy#Pc1CHbO+I%$ zWa|&4>O-k#R2*WeQcS3J1-4Pt1s*!)9DYGrG^U3Q5E1&Fy-T>Qn?=Btve`@V!TJQS za}a3gv8R$vptmDMhq@&iNoWI=^Tl4MJ-jjH6KKh&@SKE!WjZHaospe2p}rJbuG$xn z5DP)qGn@Ba{J5NTasYZjg})AI=&248Etk#XVG-9N5^nQD%jaiKKbmnF{mDU!E2d@DW`@T7N>cdl(*qiDsDVc!(*t?4O5QJRW1Fu4gPO3#BFfO-b;Gw@aR z2`D>g+f`yF;CjTekyi(j{j#fAYHls(cv@;YBFsjDp>TR^#f|js0MavXzfOAa$arE= zN5c)YYkYlNs_LuNz00LM;Gp2*o{aZzg>@~VXhKHf4+_eEidqWd1~^c{LQ-89D8Q&8 ztOL`w-x&`YCV6LEzxT|6{Q z3zVJGhm`lyHG;LN2dw3dQuq0jPH8_9yTmqPbWRrvQbu!G2}hcw+m$i9EIU?$D;9~U zvI%5S#Z0;DOeWlVCsCqwML>Fd+JHw}wq){&gs4`T0Pb2V)yx@kxiMEQ=gGC$RbatePA-t|2aEtPu}m@19fHq3 zS-Q9!Fi~sYAl)umJ9y6?f{1gm+cN)p9`^pU~MGa)BpK zT&6P0!5m`{mxyc0Dl^8vY)Gb@?xQR;XAzVjX|G@sK45xmowdEqEuw1hmTjz{dYgLz z*CKX{PgCm$J;g`dedhGpGe!WEGcMNHO>ue6M8WYosnlzCc&^2*i&zD2BdMCdL+qqH zXgwdpw!6n_XT%J!4yl1|m3+F;JFjv1K0VIU5(%IY((JwDd?uKeP3C+<90Ryah&)jt%PEPGq)4CLhyl`~lKxLy3 zY;@me6a5T9noAv7`G_EH0P2NVu16c=IVVOTTtP850W(NHj$0&Z$H2Q{`!-#NUQWQt z15IA;$TNJjY`v|Yx$fLS!+DSohJ{Xf!*jM+tv1HHvRGEQMtxDln&LF@cNi9Ozp$p9 z){hP4VX3tIso2l6r|uir3fQ{qjO^W|!U(}IgLMVI|8Wwdm5XqqVwO%C3Tv@CiF??u z#B58H4)~Q_E6zRf1rRe$0-TEiIEx~X;93@Tr>K@?RX7}&_pGN?%?()WD^YLg-qmxj z(4PNEK%($UqdIsX4~l7CFS(bYe1}9L0N$as6ls?8HHwJrVKuUWViMjvD;Do|9%po4 z)^a)boZ9U7w$7Zji45TEx-k?Sa%pVl=603^s!pyv(RZ^8EV)=>g0#$MDdvPPbQ`Wr ztGW4m~$=X7I2zwQzGyeKON0P)KgO$7N34phHiMx7cZYaD|M%Wm^)F zcxN@78!eunt>VZoKdR z6WPA-mZWSkQiPTYWsi|etJ{V1o3;VbTyd99U5GhQG#L75H&+I&)O!N>#kH7#s(b?O zU?3&ael%}k_I>M8O`1Ax?0yh+kA{0v$AR45t`-*n{Tp! zGca+hOLmy_1zzevAaq%HJpiBs_-Jcbvp`Xj2~eC^Tcl%a*q9)rhxq4uSEKH&Q(qV8 zaVt#U4bi1?MY9JfqNTXOjH3iR=4$FaOP^9O+q;uGl#Z$5gLV)D5yF`|tte9-}Hi$|+SDNMJ@nc{#p;M6<-3UTW;sHFmkSpOTaj zra|nCcn2rXMJV#!=Pm~oS?_0e51g}KEoURtD7JeATjkGOlel|r6N_)3d>pY6nuqv8 z{$I9yE63SF!BE_dCzTdJ9JJl{zYsFCwToMu>yb9hy521=fj7H$d24IkeLC-G46dD` z)EQOHduS zH%(*6N~ZJf{nA)NNItdxc#S+-+aV*T9l_wv31qn+h2a_Rh?i>oP3*Gdaiax}wM);p zZ5f$>(jgn+JX|E^k7PZ3Rtg0MCF+S2ALebikTR1KVgA~Dze7mF^Lw(iLjv}G6=?aH zP70c=@_aPG8a^w`+oD!IYj#scIkBJ{qY2lEcprNq9t$`p_@OR|JV}5AI%jrlox+AZ zMW4Z^b!Kh4?icdoSvg!Q17X6*SSUylO_QsSOv?=|iG3|*hAYC)Sl6AjAKCfCW#B3Z z#Een8PX;525N;G`=?~e3M6NLwA{Y=q6?K9Pc9>$CoGqI@{0>C)F5jfOsNS%J6+F#j zzi4l5pX_#tSzPZQwGy-sf(_28)-jhvzx&u`<;0#GgSXn~K|=7xhsc$+A660{llJIc zv5?f34q7;I0*qFsMMehi{7^uK8SZw z$~diq(Lb#pp6^qwM{-QA%-~rpT*YS>FRO#*N=t;ExcE#qa*EeH)9dKfzAES7xp=op zVqjE<$bdf+)sr~L>%rZJT%aW%V)C@|zHtXMU0VzSy7>jtLw`<8V2%s4FbeEAfuUKsT{osa1E%VCt84^lWh8u-YJwT ziFqE0^Lz%_rAV(OH|=@?i~R%TBmCY1=1=|&%SJ&M6!;48Wwd=i7!O&}l<FAgQBz!x=_b^odeB6&>cPEaV%LqNuDMEkp8c2T+F_gS|eTS zNNbWJ1@E`^4yt2n8Y)&@{Kf6A@uw#l-tZz_0xEqF%mZ(H?J+uYW14LUMCwAM;6 zT?Fr&a08WApdn9ZIlPz?7btBHJhj#ho_D3-AMN@`ykz|yO2Nw_U5SK{l?@R4k?XEa zOtAwQZE_;vyEATRZh_Ni-oDn{O3K38G~fV1_lG=|89PCUh4M?ZgqTTO$FB(UdCqRm zFN%o}jpwMVWhs(mQuitD0RWC-w0QNFs@7RY>zvg}l;MwICKszpa(j{l2zK&VsF(=% znL}G-L!!jPE;U`0Bxs)m_&Lo(X-$xBl#Me^!E^TP3_U%4~Gtb@iR; z{C_EMEWt+vxn`BTIw0D-it}de#0gl^;_=4l3{00tnPJ$=U9Ai|U$(Kk1Je6)x#Ie4$;aR8~ z=tQFnMPNIb1&VXcL~G`;rjFa}meY0R1XU0vIro~n9cD?Nh*264n~v9*<(gRk4J}dF z6yz{FOm1guSj8ewp|ho)rmVGwPiK)-cRDd;l}V0y9Ynux)dtk^NfY=rDyp1NCaZ0p zlZnK8%UB$p)5Bi_xfX^|k8ZzVF6lg-0fIDct!qg`6^1dgl_ZgZG? zJA`Ux=XB)fYGyf>D?IwqZ&Vg%4{=F^8r6JjN;fzec-eNE2}7|4{6))#b-Nb=x?0;h zGh5dtwl2A=lGYd3);90mmMDV#img+*a9^z5wK-c4-d$ap2D0sC>j3dAf0B?;SsDX8 z@hq_5O+%_K_dF)h+AKi$HeDIXkh_O7ldAAty)i1BtgD`=sFHR=nKZ8kw8qO68aP30*%0_Xyx}Te?|&tMN{gL`?Pms1u+`$BHA?q9rNW06A3v+ z@7|f$%f|aM%>IXRk2MrAZDa|lMQwsz=4e@jd~iw=m)t05OHGKf2*KCHX8we4rby_V zQ}iYv`_@p&*bCM`uMCr`vViXRxco)A=!fH1Ss+3ZFIb;Zu|qoWaC6G5$!)t|c&4i7 zVwM3_r($w3{lyKJpt9=p8yz@UhHNH z4v;sS8V#!*-jOk03H;z|sWY+fY!&EIa*}cLmaQF@hri{FO=(-LiSe%Gpj@rpaTVvF z$yd~#f-wY2IC);nsuX)-wYOH)XiA;aF6*YH-Vs7aIYB1#t!kcEVH4P|8Nfyb)V?oo zlR_F5dQ=Zln-1M9nkUg+hPk0rJ+D<4$w`J)o$|yJGh;r{-rK|#o2gb6@1rmO<5PpC z{6WI(nfcFWW&EMrvh1J9c=Q!n_77z|b9kx zmhr|rv+RdtyzPBi_GuXp_p|Kp%h))bWxpU}KFG4SZpd88xcy9){ZSdeC*!$I`K~Rw zUm3q8qq-~0K7MzW{YM$2vsw0=GUoSW*?*AnXYb9j-<2`HFU$U&j8EJz_x%1WTgdp< z4`kU7%DC;@v+PG?T>K7suZ-e@GLOS7`%^N0SH>@WNS?#FEc;~{r_X2EkIN9>^Zdn- zR_%%-q=_CZAVlIgsPYs_2~!AsQ2Y$IIOa!0)zUHz;19G}MABH#=g}#GA*=QD9bAmQ zF@17la43VqSWXSgol;8&rVftdV1{FLUI%6{|0*+O6OAz%R4r8n)8GzM=g^?dQ5!I^ z{A6g!!^YkwdQ7RBjbI;|nu9CMCbX7Uo7MogJS<_|>9RU4(|USTUvo&l=H$vrSuY|b zgaLOz`jk!`Wb!k|&lb~i)lrHjH)&XMENX|P66Tr3 zOd7BlNDY%V!AS!rKMkU&ilYlt*}f1!pv~L#lg*P2Fmjy!KsL4P{9t-@0Q?ZJeOMY% zzgrU_`s6weo=aKf)2qrF$1S0wULBc*OT))qC~RI{$|4l z&6j(YIAwQ-bQp1jA$XE3||KS@v#MmUi%`6*bM?C(J<_&B*s&(c=so zSxeAF8ps08t%{TAT^zv)VqAyFNlY}5iMZVTg#OU06p>M(Z@-uK3=u{*a*;FZnWP*& zt4=|uNbWATKI=(6oqBV-rVXcnq!Ru`sPd^%~yIRfI^OUy| z1w_}4PscpYX2#wS%5_#BeZC^vPB82L5x`3*F zRWKNvnX;0B6OA54JbUE{Q6#161SGG=$MLiJ`10r2C<#GMl)rDuP~y^HHqaAHxh z(@3?pbyx55x~37+_%&*Sc+30RU1#u07SXNI9xmDNeE6&&jBfNmSL^9jr;;nKIT$S9 zx)a$DO*?e-ISoKKYRo2}@TL68myDTU0tFNGwP>xQKaVPrqIWQb)N--pXxWUdlNw9>|(Er!eEa&6X^@U_B9uP*_i` zWI#?lJL~hiFEbTgK*C#_ftn&jtpUNU>(mIU2?s+9mmY!YREOtGosN9DC=n9LvxrmH zZfvvHc~AiAL^2yI9N^g#10|1BzGP}lC1oSmWL`>T@EX9Krz_*xZCXXAYCfl}^0{mZ z%jl{I{L172psIn*0}1rxRJzQ$jtH`8EDElatnRfOP}1Brq-K+FVj3#5vt91K>OQZ255t zeCnKn2WZS5(&fKhUK@r}4b#IDIka4FYi2>&0Zfd^byJN`Gd*@qI7Hzn+C?)}I(K4G zs&Ps5sP)B{Kwb{J>%eFq_rc-7y`Zem0iC^rhgBTz-JJ#3J#H|opfUcX8P2&jNMbd3 zaJh;pdaH@byCpn^{I9yj6gQpr#$_{}c1X2*-j$8d9z!FQ=y5|BQH zCl?TjVsJLpA`UJ??HLgYz!FcB%UBkP!ZV6%`OXd-F&PnH0TZk?St^Q2Q|`KQQ|;(?(JE?a}M`WVu^G*qqIMF)xEzCXNO zE>&gXJ!e@Vt=dLbQsanRR>sDNhr2->lha6hLT0#a9s;SBd0m}@-BLQ}vu5T*_YT8T z-D>*aHWiO{5$zxxSRUT;f{I=F@t`fNOU-%PaLICIyPGe&gC}J}Dc+ za075pwpG|A^>V|On#J%M2~r^AhOn5HQ)UW3;7-WHpxF)666>3e(~O!JlhSE#yj+_n z!a=q*)yFw!e4%8JR9m`WVW8k?j$n7JZIG1T))R74?+jHlFs6#lt=4rT8wd0Z?OY;2 zZv_Q`kP<`EMu7J;xB}aFO74I~Iw2KyN*b;%gC7k?y(+OW%g+Km{3uh$lJ(0+Z=qZ( zb6Ffhd_22E$Rie|+*ua9poFAOc1<%b+f>ZScd0qb1dT~}BXfd&9$cE`A`s!Rs1oat z+761?b>;*wF4!G=neZO8MbOswgIaVThqC~s4*e&Me2{X(Mx{#%sP*R4Wox071W~q? z5GvFDk;dIX{D-ly0f-$^2Wnp^PBQFW37NUbx6531C$vdKm9Zjm2x*p(c5_3Hb#i3v zdJav#`MKvVh6XsoK^L&VVE9Sb^9(dx3b<=41)LmyD z30S^KF;Xd}%D~y&MCph4M=YYg%CrWP{5Al*jmP>s+u8}AfC8emC{_i|QE_eT#)AlzxgU2`O*hJ5@1dc5 z_*6bo%_z_wG5APa@-79zjH-%CRs_xy)X@8f!t8|V3_)(eM3<9vj=)D7s-m7}>?@Ng zUQ~HHIq&iZ_ejd=SKTA|(Y)y9kY)A2i=)rxRHQUpNDSz{N>a5!LjV+mhQ-@8-Mdf^ z*DySxO+Uo@6jHC)n&Q9#PsA?kd`!8+nvG|k)R)aW=_f6=ioSsc$h@2v!Qat$jh2nI zV@4kGYp0XPqip-5X7P$DSlr!9sCz=ow)agE1PD7uj=WS#D5khOYSG%p6)v?MeK6`T5a25Vh;wPPZ^ohY!x*UzI){#@Gqv<_bSW~Db?9f~cdY84P zt?+un1)W;b06Us5if?g}3Y7xYo@mFKC6~3YDQE^3jx=KzwC0P+;{vO{LyVobH7(dn z)Hls+_=PRf`^aR_0LUX8BH@}VIgIi(5di^2Yy&cLY}HAvdqorCT*tQAJb&l~=+!WB zH1n&qB5hi4)EkEA*cA_w1eek^u|`cQ8wYC5jqGX^_Ngg?7HranDZl^pS@=G~Bzyrx zXS*H~=~^qKoMiYE*IalQ3%G+4OzH2sMkFM~Rg>BZOiJ`FvxlsOLMpTi+6q*73<2*& zmui4iT?-No@HfOH^qdOqD`WT27<~g7Uyt)Chhwtb;-Z4XAK7D0#13KuS&?~fEpkal za(%=H^X1e8f!AXU)mAkVQ%P^|MOk$t9DJcSh1S0xkSuhEwW%{vDRtspQn|5U#Rf=o zsN01>?u>lm$u8Bsb=4%;1lKd|8JCB7lbV+=CwoX1&y>$Xl>ma3+R1~UY1F3fSPa+H zi`6@?Aq+G*JZEEZH~a09*umpG+fycdLx7~MIgVIj?}o>4yF~{dJ}W|JkdqUsU`ti3 z2Is912O~a<{cm|Q>4&@y8B(~Y4dbuy<(l72==Zk|0GziCZ&)L@;7m$@~@rZNuO<#a|@e4^CBGexq~*%M14&u-OQ z3(`!)smsRQkSMf3TZFs93|CJU5XP={PV$9U%SquKg9dC%c#`tNlr(x|m8O4N%myEM zs`r3=;B&@`t+Y8}c$>1_B_rztc@_Hiur?-3COY{RLJl#bV||g@c0@ODym6#7D(eNp zRE_*-hUh@$irri64m)RmD!-<*2D;$DSVwp%`X=--Vp8-MIn(9&G%VX)Obo!hMPcfF zrm0R?=D-B2xE{JVrmwZqEyzXk)2NMzMKu_?T*Z|;o>Ha<+a9aCl=MVZIFr?xKM!{`{su85W}Cq>kP%xNrKoLhTY}Z$(W0Wxtx(bpP8rW zYWQR=mj;i(7N}~A1Y5tyHhB3Wg{&lNM&BH+0m>_ePr8=7dk+wuKDwtNWR(xL z{&no!B@=(=A!Nxa_u1`CqPjKz(=4ljw*O+I>L+qTH~Dh1QOrigbI(l+r88kbC$F6@ zsfz_M%)T4wkrB-34v|%`k$UZ>n>n4bM7WTtT#%fa|7TehS^@MV$yBi2cX%<4|6G(@ z0d-9E8s>&&WGy_ldJN%~J$Ry={E;knB!PHH+^gY5vl+--DmUNS=KZI)&aN|e%68DC zB?LPtKyd-Hp04s4JWFlItt|J!uo`bQ)CSW5tkC7g9Y}~UreNZgJ+k|Te}l|*Kcd03 z4bp<#&5g5i+9UO;(utaMiON$1n9COvMc$a;l{cMU(&oyA_u7BJikYDx;;Mlzg<|Nd zNu7$KRFe)Mm#iAY3zm#N1@o+i5WQ|PTMz@dYIW4${u65-NmjV>mRKe-l{G>lt{x2_ zaJIKf$`rQtzR@HMACm(pLGjJC+T#0#_hY@Oyl!5x#Iq}NbmVuTslzpDcIzs@ypkRy z-P%N58)yORZk9xk+JYUo@UZt`L@0btT66>zF#rxsl&~j(I&E6j(%9S z?J5vWBs`8#xCT2=Y3bZSFyvGA=b&n&Jv$RbLV=AkUu>Xn)=-81&q=*du4#>tnsNW& zDXw>thPtBZY8548HH0?#)LnzRIS4>tW zE^QWE_j=w+Xd5%MQ(*%Q+!RJ42KV5V*N@@5+1)n!A9^rC!ne#%ehQW38ILH4vQxvG1FDM zGrBabijnPT;W{@;*qxYCxg)1Xxc*zscM8T;Ry&fe+etQYk*^|_)0011dekEDZoSwT z!!WRj8ffu#>4~>*T_-7oz#CE7AhIB*-a>+AdPQOG8*f3u7ou3yfa!^DU(pU8D=pBF zTXuO>ND9-Iqdr3R+KLB-@`C&MMW1NYc(d#!fQTrnTdNu~q;vO)2nr>YB36>>UOgV? zMNj$><4x4kuPDZTggLqG)F*EFBY{u%Vnje$w77MwKKNG;fLIVsvbzUE5Z zAYa}r!R|aT=__moVCyN3S1wc^$>5thee3*vt^BD#zLt={a(YeZfHe<&wvqAGUiQ>KzIDKnMY+yfQv37PTmcT&BPyl4h( zw&-TUFllJJaw0u-|C2zz(sq4#&2zCC@c0sRLcAd71VCmU)r!ixKD)Ss;X|E(&x*Mh zFimUs?ychp32c4(Doxb(o(=(XAj8Tv#3rskpg_uSY(*v*FB!K`-vtf^YPf? zzKgUEQjV4wPh(p z-O(NN9!b%v_L(klZ` zd(!DMHOv(PC9bUqzBTH=o--y;wQC!Km6}jY5+%+P>YZ}ParkP%c2sTb{odtzHq@Zj zAe5*|fWaP2CR4)9YQ&zAVJM)$b|l26bhYxmtf%>w!wPR?4{&;U@(qY_nKb!+2+$QM zURK&F);LZa6EkkgkxgA9HC<^1p4I;a&VF%A3O;4I0`Jvt2Y23i=Odh{7$$7FczD@* ztDD3aNMVPV1m&Do`(axZ#R+cvD1!WR((e-eW=*yrn1{=G31$6S0rPXHD+iX0gcWtK z=$%rh^^~cdF=J{62^5G6H0VlLP*k6+R|eDOb3taiSoEzvLYG-pr`m$$Qes8RY8mLp zwV6XTE!lDDXMGUE05O1eDY(mhFmpk&BvLIo>L#*%c%z^8@rkL%t-6jao0ULOk05k4 zJim?Tf@Xtp^W-1xnF2Q1Z&Aup`F> zOCVEsI=21UfoRW;6@TCj2E9j9<>?pYbZs+!V-OF+XG)5!$Eo|^w; ziKwiT!Z`Pfz@X<0j;eRvqfRnt8a_`U@r6G0^7P@C_cDu(#<~2D| zknE{%>KRy&1zJ-08XlT%K{R&`@lN&Hux$1c>&?=2fKqq{g0KNnG*f+k7|9O1ADmOX z*k7&2L{lGV`S7D6rsd2fvuK)tsd}-fXP!M`RpW36WuSy==S~_4b47Nfp=$}dtS@H% z?m$HH$s<*S56kjCh64GauCI>Dq;Z-wE-BnFF zkaa`h)G=Hz&jLGebGuZsGiKNh3EWYkP_v~?fev6huAGd$TVCuGpHc@&rB)6qu!QDa z697e6UM>#sMx;%0esl(Z!^OGoy6>{{FB7a zeyWypl`p&j{?;Dc0h;j*<3+z7kGn=bmI_tWJk%@B#U?^CF@e^+w>B=XmeVq?)@Av( z=I{9w0<3d@=sfaF6I^fH0Dy9|mL7IQA6J6W?r1N+kz#qm+dCd`Dz7#g$gToZBz74L zB-U6o7!14yGpv9HgN-r0ayu4Kc#em)IKO>oy(|}j2-7M27PaN|jgl?UW`e;^!a)S9 z=5raNWO4)u|7=d1lX4IQg@v@x%JN9yDS4xecgZ*{?8?}e@h4>b zMHzon#^00ic^SVV*RT+O=#$S-}V>14( zjL*sVWf}ik#($FWKV`iB_AL7*8F$LKU&cc+uE^Myv6S(>GXA`bAC>WUWc*VZza--~ zWc;>_{~_abugtP{$XJ(gpNt1(d{jmuVvWc+}PzaitNWc(8uzbNBh$@nc9Uy*U* zRay3S8EZ1`m2pwVM`TQ7v@$*|oWefjDIZS7i9dpj4#Xh?=tRqb(XzN#wi*1 z$oQ~~r)7+dFXoTQ_iL`TO8)x9)zg_ugmzYL zcFg_z1M>UtfA81c);*v5y%p=~#jK4leS@Ak$9eC+mp}jDP3{-|$hlXjk8#vJ-|TyP zvKBs=9c@3p)^qhz*^TG(-rxM_;rG2={+z$+`1|O^*bVr1?>VO3c;APz?A15<-aEvR zeL6e*-m~)ipMTTwuKB--p}YUy8^5=Go2*6nbN3!^J%6>=Rqs_V-C1_Cweez}(XE)P z7voPp-?{o~+p9<9nx8!89)y2%+_U@n%=3->y7xYD>(BZoYqS6d(PAv$t*!-e_I@%r}1RzxVn2-pBQ0Z#2)@cidXLaolUZ z-d_02*R*zYqxU}cm#+Vv$F(`|V~5A|MPKZ>@cx@z^HF(GeCH3#dVc3I_b=*AzjjQ! zfn3s?p2u9h6#2UAUGoK5Z=X2kTse;)k#efhzk{~J(C2MBYz&Ghdf0RZSA0{~D<0|XQR2mlBGPk`4}00000 z00000umuAEM*tuIZ*XO9VQF7;b!}~7a%p;HUvz9_axZjpVQFqJV_{=xWi4W6V>mEk zI5s(CHZ(P1WHw(gFfcGPUvFk#FfcGMI4)swa&LE4R1E+J_obC&Fi)9e_obC&b$AN^ z0R;5{000CO0001-y=|;z>9!WMsyO#@DKBt?Hz*%5^K35G-p$&(t9E~$1}UmP>h!*+ ztGhW>_x3$Do#R|<&9(RJz1EuR%sJQIwHnWjQ52#Wln~$tB8fxcezYoQ)#@u;UvIX%{=4;}8@_vdf4%8nIsKB`(~q81-`iE2xqe#qeYNT9X7k;3 z*s8ufRPaW|$wl_D}ra#osb~KK9CwO@2A|3Lb~+{+jOlk(=ZC z5&M^-Z~y&EcFj*re$wvyQM((n`4hf3b>D9s-1nnt?(nm(@#l8?5B|Ol{wLFV{951X zKhCF3e%aUf?!WMZ+kV9z`}>clJ^$NoNk@EtlK=TNlP~`V?;8I1$sg2nKmJ3vN7u#Q zStr-__rL-~TYaKK>rp{|mn`{(by?`%mcaf9LOxe;qZkze< z{p!i&bDN(h|I}pie-yTV?@lKFckKelqzN|H5Q)_7^9U-}IMlZ~WKx zv%hA~`0JC&ANm`U$)Ee%lgXd{KPQv__V3v<{-Nm_+jY&?ZcYCCUvX>F|LR+lfBql8 zHTj3X_SU5S4Ywx$YjJDxn||}H$$Llk`+K)0|K{trCV%-GwZJ#Z}?-kCJ+AYTa*9I{{7?s&aKJ6^rvo3Uj6rOO@95Kxi$IM{;WOYKe2cG zr?)15{x9B|eCxlwHThG2<-OZm^7iCku5M3$)B5)0=iA$p z^4aal7vH}<`BlH?_T+#5y|*XR-+z1Z$Ns==?ztyF^Y*vjd-vV5r*9SQ%WbtPp%c4{ zdfVN3diL~#_ueYrZuZNzt~QI})BE2j9)DK!7xm_{D=w%DrB>-WRhp3wEd7xLWOtu39aN z^18IaG|K|Rzo_c-i=IQS?LW(9HSg`G^|~mFl}%OO*aNF#+t}%t?PM;He<(Vx8Pq}Jge_qv>_TS#d zj(OJ1au8j=n_uP^bhVit80ZEQ`C)TC<>0W^)w6Qm+o$s(>pf;bzr6q2YsGxcN7}e- zD(=7jjrf7hrd?F*x*ezOywMWdU#eCk(IPCG&0U-98qY|Rc~ZR3=XHH;uf(EC;8sn8 znVI5s7o~knv9u|lHH-a}cQ1FFjsJ0eQMPMcYk#w;uU4!2+$M&j<0J7yGe3LGA%19g zV;N=@X9d%6X5YSDl{Kc4lV-o>YV5d(8s4(1RvqWLn78FNrlW6G3v7!Tb8heIs<|y! z@6uJSu1l;2rKQ5Rukpgi`@)RC4y$K3PHiCeg7l{Iwz+;#ypInpZKYaH`J4CB8rWag zP5Q-a_{E7$vB}e-=$dtPeNn}RG7%|y2%LQp9$V~8WLCxLeNO#(Q*|M?=liwoz3Otc zpZY3u@=PRZ+sd}hY*MSXTyY4txv+-is=wIVldwday-A`yaf3IvR2X=yS$tJda-TdX zKJm}g2R=Nv8JC2ana0h*#WnfiuCn()ETwj)H)RNW1^2k>dHTU`efQg@dxk3SVR!lM zYO$#MPQ!eo`Dh z+cq5*)F$TT_GPFhD2^jnfluuttJR`v?J?KQ+5}@&Uum!V8%^zOO}T9P?yhS~o6Z&z zWy;Q^VsCO>P=~a|X1A_vMs2C;HMU#V*bdn(RxV>_#oS(ih3D`2AWqPHWq*P$yMW$1 z=q~L4ciRK|2#JTOPACKJ2~4`Z%7mfo8&gjFPK=lmYu~fKYd2lh%?f*~o7>l}O&32& zZ?!#iWx~dn_ZPeM)&|B$oGZ>rfdnoZjoptN=!XkDVI69wah+;c*ImUK+*bS;m)XmWZM_To7mCI1 zSn*__=DaR9)HiLlH9^MF0je)t7db5lSCJC(ocu%KEC;7r$Fm>bja`3z z(b$_!?=SeHa%W#*im*1>u!mEO&TQFCcr_>d@WBG}WSpB6n6}1b7v{#;=dL?{>9RgY z6oF^>b#=G(8TXyr@%@W>!HKo0{{&lO(NJwXFqQkn&k`CXH+Q2c>99kd6FJGJNt3D7 z4Hpat(q+AX#M$?|isy4LIP|oOPqec)T$&5h&iE|o30tR4Ut(+MV76aZ&*s$@vvL(? zLOH)Eq~`f%&9)znoCW^Mv|)37QhZYR$CuKWd)p``U)moqc6{`djag|Xfl0oZ1M`cf zSxxb9ei&X?alhkYv!d+8*xIlAvW2$0ZrV$U2MCGJm)b3HiM8%lbYDHE+&0^%wlP-HPplNyLFsF7(r4W?Q=}7cV}lwpHKnTkO5_Do(2pOvg*3;4zol z_%dwcN}V<^zqsMCJou=x_*UDT+o&Jys#Wn$r7dNvvfG;e;50xTo)iyZOW7r#H}lJC zk9mfa+LIO#QZ9px+Ztv>YkSf3#kTCI7s_)R4F9;X|F}G1&FvanJX4}J9J62Xnu`@4 zPy6_}yVI3ZH}>XL+e3YC?Pe2}^UAC#>`;4d2q4CT^~K=l{JxXoU8)tz5q>u}#n;-j zR?w05RC^kXFr0_`wVhgRZQ9BNcT+tm-q}&9we})2FLtIcZMEhXOSmEBjC)PWd(qr@ z_Ov*dH*L!YA5acU*gq9Mv@OrgP`tnyQa$&W+N|I2G&?h^bewGKIS)l!f@WJ`L$7RK zYUW%MnH^Wrb)aWvujgsBYIG)<>iw-S4ay}}+eTDL$w4>sYw-TQG2aVX$kbvrukkz^ zj%lKT66i*=iI(l~ST`yLJjLeUbh?S!wrU_q)cEFe^`^;JSnzci(fU|7&{kEo)syk{ z9rZAjiS3e&U10KYCMRyNn(zdrFzvg{!Z%ySMAYX2xliTZ z{oC|SQY+BvW{}}qzy3nC@~e8v@C)aCicR(GL&|M1Dj?-qyKZf}CK zH84B@HPpT9Ekl!0x`83oI&WZ{LF*KJ6GtFw) z&H5zjY@VL5ooGKy6>H!_<(rr<(>3$Dfz zMbvUMhRTHcESh|Ndxv*Ji7tpkK z?tHZIx#KYa!MAy0=w)U$ISmgYAVQb$w>X1mP=2ahLS$c$U=U<2Cp6i7+&`^6li7W4l02X9LOQU}6um(t0%nIx7%kzmFkI+`Tw_jr zxLk&O=SlH4ZEKUi&Niv-0*1O`dq%{gE5p#FR^zEq;ZWW74Zg#^#%^p=fQQ%H6}wJj z#)(HM42OoBFUb^~R-7SzRKikjn-#xGGKFCrFxa7U=;UDd7MRy&i7i4r7xmIM6ZEH? z;b!B$(C96;>9_p}?Vl^|ZuuS(K*XLrE*B?X(vaP5yM@xk`B!3+@pX1s$skiyMB2&B z9c&+*BxwSnM8E7VO$gj!Ot0JnQ!UeUClqhTWs3-22Ls~T16YgZWZ+)Ts#RTGRWG_( za^b&lhmK(zXpPc?!2>VHSIUOi;n-*V2D`7fiRtDgB$FZ2wPg3q4~&}5k^+2PeZI*t zQkUD1%)0yX=|(&@raXBKeT!XGcipb)k{I!al^z@+=$jv#40t`kV_4YRzOhZQpP!#! z;2+$(!3t6xDTwr9TmHp|E&}JTA#gs3BQiePY!D=(Gb|IotDgBO`q8%->|t1}X3R(q z%{D?G`0WfK5qV6NIXBqvWs0cbc^WI7aJWiXglohuc$gz}gup{<=92xrMb!7sowR9S zEjKxoD9;@SAnxVJ`8*r42YdK_Z6Zm`Fs^c8I)SnEXFD^!rOOo)LQGE~XNupQJ4j#C z+0aEe{g$T56&@T~baBP^cJ=&n<#uM-x_5r(4mZZetl_RRjSBm(gzVtOF%VNRb^(L2 z_CNWZu8*jU@7%G0m|JpDt?jUHQ`ikF8NyX1X`OnC;I2ndm(}&u9%0{BDVFM53lFI2 zFTnKRizpAnhuhdMVj1!I_MD4|Olj|8sd>^f?ND?0bjEcsx&kQ236eW^WJ8oRRyf}D zaZ|U{w{QVgdySFSjOO`F1F<*VxkJ-WULuW&w%wn^(0>sDkBPU%84XL;y-8$*eQ8kR zW8hKR0kVOS)6;Y`3%>S~(;kC4qmo+T9=$DQN2>sf##9tz7-or0-7<$_IxA*~blPK5 zB4<2b(|j(>>T|{*759U(^PA-H*vsuPuC?-FNJE>LEzRSCSyish3*qsuZ`MF^2=~mM zqP@0qhXcB}FE8cV+TpbbMQ2`-`$DkBaSMWbG!^Y3Ofn&E$FVfqdQ&4T1=Ds_cKvw% z7286jtJFSwMaDX2=B5zPe89@f#Kwd}H&)Lyv-+tSVoD21R2CjKNrnnTDh%8zsD_oA z4*uWlr50zt-9H*AU9niaENvX}Z*d1hk+-JzfFECf=MJ9=Gb;rnJ49V^UTJ}s(5CiR z8RBrR{UA0cOva_nMqK2kp&6=+`l@N?m3_?P96uby{dDZz_zXr1Ok{nN)-*in5!nu@ zfs~>2Onr;pxwG8OsnxG9%+^K3;L@aH2{6%A$I?Y(3LJrVXt$NEyhps3@YU>BvGYrK zBgh(J11oqYb3mcN-3IOeB$TcTPL&r2t>lBi!?7`>r1EYrmul8Dmu76Y)q^5OW9?uH zC()+r8oL`wAJ6sr=#(>o(nmzd{6APu`FULF`)~S6A4=JBolSTVwN^mNE_(I8E;=d{ zj?;sg=I!e?QW7?%Y7y~mg+e_dz1^7^Tz1-a@#M6f=T)1d9rFG+=f?lSyI7#+kn+Ve19VV$^)E9n65@kFbB zSxW-H{n6RrLA9bM9>-%6j}b5TGu*Z4b zt|IPn`kL8dSexr6LK2h$L^58v2Pi}n?w_X{gd=c4wGTtc>bxx%J56KQNf(U1t?F~? z_s|8><}mYj+pbDj2}dXRVC0FV}D+!54nyA4!auOkl(MW(eE1TwqH$Aw1lnBFx zrig7XuByd(m7|>)K}ZR{1{?6Y;+Kq;pdUykO>!Ktl)PfL*Ory#QC>BS0&_&eyOIx< z!Uy3>ZebV8R)-n7kC{`Hz3F&vxcwOt%7cyn84j~=8XlOlR(Y=Q;kDBbx@|3k4nEGN zJGgnf@`7twNNZUIqp@Pvs#;R}Az~j|1`ZUK+>(f%_|WT=;bBa^p$II7Q!-k+MNT&` zTdDYcmoLf_i0!Hkcv)3jOqoe@UqFR2;v;A;Vymw^} zk;#;!5ZH!e32;U8C2C9we9vW`4HL&ag*JPgy0B!k#@IXT+kxMI-A|79O)tLOzHHi~-Q8eU*uYv+>!h$b7 zU`yM+wNn-Wv#rbbc}4S78CqPhLY6`%nwurWu>yKrub@G$Nf==DBpd|1Lv545#;ch13S};X~mQfw?4(pd&i|z&$gI3H)iWt8+t#C zVeb~_+%?!c;aT==y*&x^3cVHQq_F>-qsa$eghyw_JUh24j%@2FMZu^Tx=>dncoVca_YL?5i zPz&aMr=DGfMpy_`$F%Pw|K>A6M*{|sHmEtvR}m#Yl3+FE@~XK zq%dZIm{{iJd5DyV4M6doz6uM(^xkq+J%bFM9Pq&B$MXeGFhtIDK9bUGGf%pL7qaKX z94j>;r$zE4&$Qt@gvAa30zT~w8I`qZ8>;nKQ}{Tp$G?8(&il^P+qnPmse|q~!31VVxG;nxhjLfss$jp5fM*e#7PUJWI? zsAz0>*7u=V|B^2sk=a$NdcH3XwO6j2aXzQi_4G^a5i*Eh;;>%wJw@HmgKx%^)sd&5 zy1N*-0^}R*9O@%ZlXRo+4{f~*Q(Fk}&vx@moFxwx3@oXs?e(ryn2NyP0TsNq>yJ}9 zgT}2HAD-5Bba~&}YgWPn@xwfr2S}}g7(1L@FFI!Xdbx`e_UYN9pTQo+Mhct|m#Em3 z+X$;)Li8fAo-l(M7#<_dz+Wacu`})0G}4&#uy5$xaNcd|X~4>CIxY~a20W71Mo0t{ zdRGA$VjHP#kS&uJkn9nB@FlXS)y5^n|AwvGAT&rbk4bM^idnIt0N9k;sGc-~Z{Xr@ z8V2j+4I#3Fl;NJElUu2vifJ!<6bwM0G6j9jq7sy6xq`<7EokN_;2fa^d~hcOW!Q6V z4$NGhA^zARI>)c85&5~^gf>NB1K>SaQa0#E$apZrOZ#f-AGlM{z(c8gsRD9Hlfv{3 zP03$P!`}7b`8M)*z}C5BJ~_$wT?CL#B1TtcjNB%E2TfBg?n0r;cV|j`Rh>gsEfBh) ziU!2Kre4CT+V8MEmu1UrxdyPhn`ZJKOFt?KnwNWp8t{~qOc;`ehF z1R(f(j!*xJS+D!Aqp&368gnz&J3QKc@dnai?-LW`VIg6gd3*m!f zMuSW032`r4z$%4Mp~D;YR$iyGl&J^>WG{B-*b|73U`Ppw8EEWs5jjoAY7VZzqhgFX z_c;Tk3-ga{3s)o^v$pPhNi}?pjc>JE2%)7Pzdp(!Io=Zs8)ldT__QfMZ!Qt|E1p6p zF*rcz&`#ESFSLe31YDFnc18bJU+pOuAh#+)V{98-(*TYG4k0o}ez?sKyP5A3RAUS% z9hBT~o63XLkP$NA3;}{HfJQ^`hinJlnQZN`Bq;G|H$MqcdG|4Y4*doM+7z*fBuCtC zgPHKi!3zaf0jTdP$QXiqCL_xncMrHzF~CDqDHFsn4;Eoj;ER&HqS69epC)muqv~mr z+G`?=TvuzF~sR*HI@GA%50Am}F70>6%7!X*pyYWQW`|HU6#uO$4 zT=rYn@66bQ+(_E-5++hwouQaL;5`8I>XYoS@ayD>U0`}09<#j)k|^!DCM1r?$E}T1 z4_D+*uBhjDHgINmM&iXL9-X6_;t;vMB>ul|_kJFpduSw87RRb{C*v^`mwba~O^K0V znSh)yx2RCfRHp-xNExqT5aTsmC~+$km^ST zgK=15Up?!+4)G1mD-XN`RXD`nPU{Mz8M{Y+_Ln1 zQZ~`cS>P6jG~07xV9Q;nKsSOhD}SN`eRm6`2JELSqH5MvHa<7;Vgaj#^)5=FPIQR+ zk?rOV-C#<~d+T*sxQ6|tVv$y$qycZ)3ooa$9Q%WB$xgOjs(9uc(Pw_0QtwDK!_jMn zLbj)>u;Ho(S|( z!=!z?UfWvJx~KA-Gk;DT8?B<)`mCu?zA#Ev_?$D^Yi>jNCQ!YMM>b^cHM1*Z%~pE> zP$M*J(q>E3DV>88zU6U#b7WlTWc^EySEjSH5+#{=bz@;v=fG9e3P-M;nVUhddSBS7RuY{zPO5zA zbMjW{{3vAvv?@Mm%vRZOQp_+(Fx$ZS5jyKeu}^eSjjH6a6U%H&$c&q| z*lP!^*D;o)o> zRerZDl*Q&oygsl99;KJ}Nsk_YhkMB=V_u(d*lzT-VcBz*1Vk*|hscjKO1vbmbT1X+DoTp$7_ym?(tM|b#S!Y+ zsicB%elH`XJQL3lxmKjD&C}oeDsE*<`ANYE7`Q^Cr5J9r$U8^TY*uH?W{xVmUwWxT z5(ycZMeVRQLUkjR?2<+=BWeNtIQ*gA>`!$Pe^xxIZO;C)KRpm;VBH;z4v^-uVYLg% z7g&;kJ;X&p63H$)1YDy$%15yoV~3AV-#oJOQO`bnbo$y+!f?U2%>}j|Fb#l9mw?8K zd_5};by{LSavJK*RkN~%{P^r=q1W!VeyUy7?RmZFj*?QL%8y9g`L15|2^*92ghc#O z{)h?7dD*QKSfF}lR;C|iF`B5QY1_IycdN~O5QR@^od{Oh<${rG)Je30Mw-ir9A_Ia zhiY@q3J>mt!4#;fZPi@c%U1QQW)Yc51l<>%r48}6D)v#JurhyV;2lpX5gxbg2gWFawEq-1vn z&N4DWcxsj`hgdk1hGbC=7{zgrq1l=_4Aa?->U6d@n^^;+_uK=jh`dGm2PdEU#R50_3(5%WeZPF+#&T$MP>w#@$aUiW*N7kBcZ@=)%?9KOQyYpz>wT)Bv;GKvH)J zpjD%=zY;kCYgd#}3J(QUxCoc1DzOw|`2|y=Wt30FC=7jkTf!L3K7vV6kfy<{ar_1Z zA;6)vj$SByo>a>8T~nD6FegBnLnGpi9Do@|B{>pQsX^apJxyQ7v_)20l+NUxIS3F4 zT?9N^(ib6%MH(4h1MyX%4KXJbBP7^4NeFGFL)xcuRWn+Ohnk-da0hM_vLj+riE!YA zBvpV@(MYCp6w3!y3bSMi%nWX_=l{|+*>iE^N1vYF|IDclHpOe&;tS<-1a=0r|M91% zuYQ)JMi+@hq(Jz?!89~o=%VX96R0f$@wiaH!|c;W*#WHllca4l6iw-u4X8w113_fa z1f+6-r-GJ|jGXvmt2&Yna~;#3!WBgjG*u5QbqWzupJS6tV(dJ`|c#4^`cTN2tgJj`fz+ z$X^WWg?Pp-9m@gmmb+l6V7WNSK|1PznQPc4Uj9I3HeI~h#n9}eui%@UWeJq5*f)QA zdT;&N7@!wA|L%bL?Jh1{ex}S`3JnblQvyT{A98%>0DK8()>Ud9r;4S6!S%L^}k zClOTZs(TJ6&-PwF=dSjbo(T}+B1RxB$|PaoHj0C;>aI@|K$!t3V&r68)0_0oVJOja z>XJwHS49?B}7ryF&y z!%2&*8XN~*N#{hs+X3#@ToN##nU67muXQ&~GG9d*52(11}Drl`CSk>mQb9&J@y);UWd`;P;~dhSz+3074><5>EPdFOYuaewfFH zoofWNVCLePU)fhf^*2>0497)^`VaM<|BlnFqKk!xQEA)Sx0f3lp*P;^MZt67I#3eW&&reHQK@8Hr0&GxkkZ5aZZXZ7MZEzgb~D0v_>nSAG%z(bSxVaO zw_L(`#fmYuf#5D3dG0rweZ*GLwzWOmm!kH}a&%*zM8rZ! zS-)G)R#B{dUCp{W0VRepveH(@&hE$MTnSCmrxf>3@7)Xhm~4K5kWC1twjLX(hP9|e zB@;|v()t0X3n4mv7dgO#O@lpSuFd7iL2hNujt|Nr4U`zT7O}ts`htLte%vk>M8MUf4w2rX#|AI{F)yM)e0Lg_3PkWyLu^B%*_KV&T7DeEaO< z;^VR>mb@uGv{$`YpMD7<=kWA&eWY*`Cu&j6n?;XdER~M^cU9h^C%PWpc+|L3x3?CBxI0?QW7)BaXf)coA#V8V4`z$R7I8 ztxgZck=RD4NOJ(oVDJlT6y@fqR!-qQMpRy5-Ad?d#(ShBtPp835bMb6o+4qgI1vpw)VCY0V zRL;7S#k7OqcR%phQ?XcA49KIWLy?=6^~&7`u7eg}JxXf5MY|}%IpQ_q6Xf5dL(W<1 z1dZwYa()qj#0Q0_b`yvY6G(u3B;Owt!SZn3Y{H%-3iT_vp5Fv|;_&p|^^s7DtkKX2 zq)P@Qa=?Mx<&DEZpkM7`9f{ZVd5+XZio)wwX)B3~Hi94bO_3~|Tu`=0#U!AasB=RXrmZ)YjDt{yS$uETgk*R-Vxhqn=kvD>n5)0FJEnzV& znQ9*IJ=D<2bvt;^GiS;1;0ocjWME-1&uQr8G}39$-%AZKEWvVLC9xpEgb7|T=1+Xh zRN;~ATqaT~!GVS!KN!Hl9Z|04@PIPoVgq4f5rg+4_>?LtT^gc(Mx2f;6VoJq3yK3)j-xgz6Gl@P6vv?Ps2+@amJw0$q4*zo21EsXN?>e5X6}eMMfgDPN0hyGgPw@mU$4w%+$gO|{ z^jx6|pr{1jCNVb%AGE`}#4Yf>UCpGxL1YDkKak3dN^F|?cG#WJ;$fDL7+-CvO)^HM zg&4`a3iWE&Jhq*5{E-uMWqx=Tr?%OMlkBXh&o{QO z7M{*rxgmh978nBB*!Jj3$k;B(>vZV=mZL{Sg)ZsEa=~vE;i!mVBlNH~OL^vXe%>zN z4vY8%eH_;!rXasijMynJdq6X^I>Y>3gfcM|Px{@qUa)473Y%zaLY^oH57TjgPwdId z6G?($kTf+V@w^)=)0ED^IU=0t!c*`mWCwDWjk_ar5BdwYhAM`wa1s95Pj(x9D^oNag=DI`olD_Bh*; zO+d}A2DDTj28_tvBr=~7XR~fZO{B_*z{-0Dm;_-X0(jPFI^9U}45#EvPx=mlOf36@ z;$8mO#Ha3@FWHCFIy1wMqYxuk5|QA*bO@EakA5Vw9p-ui z#ZG_h<`lcYcHU?Oa$R56Zr0bDaactxYG~I%tmp|UUrRU5`;zK@T@AnpeY36S(~(Oj zySl4DUKLzt;jynv=A6NVrLoS_beXKAB1FQUsQS-|v!5zB=E;^$WrA9r8WvWn6tF`c zM+3#8qtm!^u#DsjLB3!@vgII^6ZWCsIGjK(s&<6zkhNWKde6@9!^idFnAw3h?%Cgu z7!jOTuD~4R{@|9};>OQTnijMpdJ8{LOx+hA5X=H$Nz_GEF z1xr0o@@l(Bg*ajLvnIJuy)BweW_AkwO*+L!@o7PtIe}iBx+RnVW8$uMs87f+$_WQw zy9=Z`=OV=h0*ZpD?M~s)HNp8^6)~`Fxp%d$KtHYnIo4cDJm4n~F^^+Q+z3FRU=eI- z8cIIp84tbiC@>Wf?IDkyI~@$IdqjY{s3l~qwj9LS%&_n|S=QZnLT)r9Va+tzKOD(W zrA_ap)@H3#dwzaN^b_VRWRmSVmMUYoB&^$qsu=Bu@4fdf0@XtyYqAa{gis*?hBQ=J zo=LW2Z*HmwUPH|eThOx6%0?Oc?lJ)1#KV;eYsVji*`?&FMz?xa%deQn8R6jxat*un zwQ0h6oemO0ZaJhL)Id?;>k&PEfSN94eXpwXbCcO{Rd|Sj9h-2-S6+9wW!qNgn{tz(WiE*G3t*_C z4&!EW#y)z-#c8W!7PBIE@CBj8g^g@~Y`@sDd~K^fS}YOoMu#3Z66kcnR@*y&@2kf? zFbAr8pi*hBp2b_o3njGR8K-V0di`|7q|i0#KA#KuJD?{{Ks!K479dwha?I3k`f;Yy zRl}a-jtM)A7|cp;KqJ^%sBN%^*{QcwCIx~7FSiLdYjY#UuiW|#3V^*M zQgb6y@{3C9cX-5m@+~LI?AjR}uOuq=+JV}VK8Ydd`?c!pv5ERos}5MyS`b7jVL$qY_VYj{xun7nm* z+5()JQ(uE1_r1+IGEh^qZS7pRkYakWEm_>@LO-=t+jU+H+-=F>#A$k`-fYUXa|?gC z>(|wJdc&+#E#ij`b@W)(!9~*_L>naRVUV6&FW`H>NO7#Hb33iaDI(hvwNiz3yLgfI zHf_xqo|)O^{U?if=HY}*aqo4r!Enp7S)8}|dN;>~==h0<~AQ%~uoTj0A(Y~Thsv*=4_XtG47(W%f2AJXS;Ix_AjDTQ z#8B;1VTWqdc}}_ks;#3l0`}M$*IMOlSd))h&qC2itQE&ixQo;P38(v1(ANQ^9_>IB zpjfTY6(kV=pE>%_iz)PKRm!_fv=@&SW1_?GTiM4VWbXBWxG;%_w6@?BX{U&1rz*br z5VL&czGP}A6m|~p3P`_0n)-I10Jv}s)$>CDg7M(lVPP=Ub26U}I1x!;c9>g)1kHe= z9qN*n$5d-PN34M-JsO!Nh&R%K0*?Ww74SPry9~DGU_}>H7m9w;zwY`J5Db>0=RfA$ zF<~ToL6R=FYEdyg70cA?jurz>P!>}bnLIVq=6Yh=9Ugnq{poA>UK3Rt8i|scr_-6m zbfT|V-G`e0sr%n}4eY<3B}~B~y!Mqh?}ZFQCDxgg@}k+YFm5FMn2yt_S&RuUOT2o( zfBOhcdBxoII35_J9uy!bO3!?7B^xql(Kc}iu}6bc3NuQ6IMW#tQA@|mBv=W!50~S$ zc`%~qjNIAXUcnJqc+L)R5wlKI(WWb-_Dot93P_pbP(ghJB$>ueB@5VWU!m~i43ODJ zpRvQ1pz}5ppPs(<__I`Wkjb}!tIw|O^X!`AufvmSEPjA-VqKV>=x~T zXcBn=Lpk4u3uuuLPD7T})W@)y&&$sF&sBjRNk$>LO-Zd5c~0+~4N`7*`+-O1-J=I3 zAE^j6)t6x=aKq`#uSem=$%(H}?lH*g*mA(-XdSiN-tuJ7StJ5yqn#q0xY^lz5nCh} z+&&lH4`^cYuXQ5SFdU!?Sz7<(`H#!AsujG)#2lO@;tBFCIk#uE-maQ`RUHs8I`DbF6a5@BrLVSiYPi(M zhWVEH0eh4CZ|QXE=+Y%=e09VlL>XH#ub^X`-ZW9Zs-*2~*X@r~pO5n^D&G&u<jnGaD+7MQL4NRpNG(cK}fP8YX58)yGgx&Pu0P#`BFAT_HoVS2? z!6*v;9kx=)Qzv8GLtCGD`6ok?{AQ#H0Z?X<+d?M6-1dbg_&Q_3iC%-xxFBj3kHpY_5+_h+I>TzKE z=E8lOba>^H@Iqv==BTC#jV9HF2-QU~mIy+kaq(hML#;-V>XyyuAGZ>twmH1EE)LYX zluCs9-TQoiGCei2n>s;k$Qq09Ba-plua*J3>?A?Nf#E7@T@r*T)&yC75st5F(T?A?M+xyvx({rst+;JMkH*te(@5a{Sh@Clp=?SmQ z(-);-?&Lbev3eG*QLhCD66Yuh?flFHI@haa06fW0%8??HdwF?tUZhk=L@yS7wTV>-#XR9JU-EF8uI#n79A1t z2RX)FtlT%gM|M;Gu0td;R?E7I@tb!E$K+`IZV#)BssV5Gi|j}#ykZ`!+U}=O%vmpM zg>PBJ>R{UbXkn6n|A7aW&!w!;IwD`2|b z4}{gHk56C!EEPAqCzL9f5{n4aS_Q)eq-0vzQTOSiSMGf_XrC0{X{+!?bUz?UJorUe zHd{KYf}?H(CL^6o^kXAisaJo)KdlATagX#H!#(UH(GTWm{az=?M1@m<7M=ojgxC%kg@y*uH0B;q9 z)m|qwC|1<*$*!ewc-^`lA+Ca!l@ak!dCpAE*(t{Pbqs5R&kQj8q`X?6MU<=JmVFCpE9nqpq5hJd8 z?j|&F{nZ~>Kmx_-qFbx8_YJ1dwzqG7h?SZcMu*seiaRtTaN}hLK|YVzPcJyl1UICc3VqR z;|sJjl#?P&Oxqtfv9DxA8P&jz&N7K~!B)xsIdV750Db6zJz*n~T(v0w>wS+6Wn$3X zBN+cMBO^)-=g4)($f?RM8I>%CEoJ#)!I{l&{bE0GJj66J^*ZT6*P9e_V+>!22^XZm zuxHu*M{7R&E{>hU`)?c}cM|8}d z?llnVu}2YjCE=3A*63KAQD+@CTJV+>cH!ZLLUmp7O6INuAMX)PFNF&!9IRoI)K8N| zW*cOC?4lbKBqkg@z-T=Y3vB;f@*tDX~)46*N$TJIs|9o9ni&TsA3Y~ z;?o6Y|1pHIO7FRV(9`>YBpuM9ycV^IxgtKhqKWc1sG_{89J_Z^TIxL+*#AS$_g&FU zZ#}yKGfVBtyiHjcx*nSV(gtNV^uloZ3S+M=ieC!3En_Hfc4h{=Uw5f?3a76b z^n{COTzrR&C0MfMX4tAT$^+nI(W|xS)`Su;!<7oyk?&EnhEbEK(z_0Ut2x2)F9wMN z0;V||H@txqdenLE&^mVD*llVMqoM@PNp~~l-Kd^eIULSZKI>>x4p7gmAlRzI2Ya+= z^%B>i=hX7jk!~UhsQa3jgCJ=LyU6s(-7XVoUsuV~^yA4b6~$_zu>Pv@qUAu2ewx!x z#GHI4HS0=3Q2s^v#TQUDGsouU1_f&em##rT-UponkDX72$Zl39d!HTNxq|>JDMf4N zZdlm=+4L#HuW1PtV(Wb^=}tZHJZQ3#ajVH1q9{qO1f z?-h^EzWwBB@$~HRd$tE27mwe2@9Eix-z;#&qlb^rKKKp__XZ7{m?>fSQnlpqH5+$} z2aO?kfOfvCQ6Er$!5=s`WFRAE=J^V*0se%Hv}cGG9lyN`6L;bRb^^p67SgfWK)*RA zJtwC(9^4yH`hB$^)+h-!>)TQ&c5t_yjQL_mYn^rY|1DjFnV<~?omUbVO0 zKr-!%_aD9sgAG9-G|ox*5`4Zwp3&vl&#ZCDRZ$#&_q*RcR*R`KC3zXp7h0VhO}VE@ zH-J0{?$@60sswdo{5uimbPme}HS+J<`bg)CfT!OK&RI$j0A%PD+dYXUkDN~lr(v-MvQD79P)pV2% zicI_HMSyQ1HSl0zKDlTdG0Cd)Cet}#1(};tl;H&J7Ar4kR#SQ;8SM)n*i5}of;C2P z2I;qyrXMgpo9SMwh$?9Sw4HpeohYQZ?(<6ufsd=Uw_Rd0l`8m~`TQJcJqs)7{R(iMAzjN-iKOfD%a-WteDOrd?3N`I`n2M-a52BS!70A3~xvtWox>q zl;YRXq$$M*d20;e&z9&_6Fi`GbTqM(+2b2dnnb|YMOYPr*80wqC8UsylRu8|YaVGB za#uPKWKnyA(gDk9is(s9yHZoQ!-fQ%ILMTKNSdY`pQ=0O;8O*_wk6EA+s(voB5|dPOoIX*v=%0#>Y;1?Ziy zD(YYS?DsU&3yQU%{0>Lca^xKI+pDGzMipFu5+>LOEl`vv#m7wtgC!X7Gi@DMH>zX| zx&Wz;;w2|aeTn;EZHDHqot4R`oikz-3W|X!KJ3JsiIK&WZJYh!7a#{PEmMWZBeEf9 zHjOs1JCJ`XFJEYiNRd`{kEpmcNwhU|D*{(t}jxmSkRC zay3{vHtt*@GC8kS)vVRm6BfakDCp~fpWlM#qdwP%*Qh3TB}i2`6pdlK-fRZr3W7nM)w;+FhGY=}hC> z2P`If2@4#UPIy1S3B{Y09-(Ear7Oh5QP9=Ew!$o>Gz`cP`nz2UX;7}NH#ys`*08B; zJ^xaFPYDre$|-4%k8@E*)V$vn@^Yp)Pi(9g?UXV)vy?%@t#U=AfzXy1obDfUCBwZX z4{#KfvBhw;o+0X=De=&KP`S=cfMFMdxKj>XKK$@I=3|%}0a?wCICR5tK)U#Dm4{EM zD9wY|uaWDp*`4NtUkXBjX7Ej8Lii>|ZNUJNY=MA%W5g%LPvbq*VhQcT?^0{5Gxo1w zi8qvX*pn2OPtHF0K!%r}F4~;Qm})lTX&CH!Rm1v>>mVkQSS+>dKa>m=ZPXHM4!c3S z5PE5m8wV?uN)JqL zJ}H%4s_K0}&D9EKL}V?BI%vH@cdgh_gb`M>Fxb{@t-j$%`?XLickUd&lXB;eDR*BH zbMOYh1y1xZXib{H2+L@zTNd~4xtFr20D)UG_xDb+%$;WhFgb8z1;F(oBOr~M%#mY} zLB{Jqcz!AD^)%QOv1$=+3TPGy=G}Ptu)Nw&$KC5=r<3M5hZx~53EKw7Ya7$+$&rje z!PAev`JTD=-%g3H+#M?ijYFUYgl#(+nLJxZ@oukmJeK{C9hq?^NjgWZke1@WQMJFP zIuo}ML;OGlcWl+;ncC7Brq<6-toQr^YLr#|iK%R`Z^I68?o_d!AyeS^7Xqi)>?)D_ zn+!N7S~sf9jlRP;%2-E|IXyg{=6mhZ`_~d(9{Ct|iOxGIza2ZuLKiaiE3efQSMK+R zdW_mjd;Ipn@g;nZf+i_jl9{oFWxs$h=2E%{F<%4q?$FNicYj6 zM|sFyH9~5=E!)CNfH!%{5zk(gNHa#Q zquB>Z$%o#2Ud6{DWAe2cHTcN`OQvsuh8}Gbjm+ddF7V6Pn<`3I;^c68dwo94U3amD?~vT(u=5l%a?-Ix`xt3toYYK$$6D?z*2c z0E5vwR^=?OMy(vfLX~5EskYu*p?1Fu>ls${`%yZxrlrmnrKq_>c}6b<6DU{b)7PQ|IT z#SU1IzjwF}eR1F32$r|!URK}FyKHg!cPc+`N zs}AU|)%0ySc?WpyEcz^ptgy<@_J+R>lN?T2k`#4V9(0Gz!wr!&J0?{w=+7@0$MZkJ zD^eF!=oe3EskMF6Cq@@>N@_FRRkwFZ$mv_J-9wJ8o<{@V&bPfy8n1V7d-V*I*RBuj zv~2Ax(e_*CX3ieEtaV}ZxOwqwU(?go;WG6C#D-Dfqkhf)?7;n~&X6bB{GvqHxN}@F znp=6tY;8jTKH_8i7QnKrzK*6qW+Zp|61JPR$Joxsf6l!Xww}tD$<*i)OK6|(I+2!Y zHj*hekLIcFUyvt$pm&FwRy)r#Rs)bMOvS_GRHVxT8zuHA-iIQcAW_L0eR?71v2L^G z4x2EvIv!*y@<`L{WgW$~SqT%=bx!}Ib|ZUtNrO9MmXIz~Y5{7|WJRnjZv~hiEHrLb zAwmfKbE`_D*a&?n1b8E;UNGk(vIk~X!OYz{>FTfxit<(LmtKkFcHA(W8Q znqTK;D;Wug?I1mM3OpoBKN{G0T`Cw>l}7FimvAGIJS3;Jyux-A-lvP6T#mp3-|Z6X z)56J(!c9zRAnw+i1&ew-Aq(ueyH?45sEHt?Q)qGkV8nA%&1#{h+061hD*@$w061${ z0v#rM0LZ&0Nd-O@X^COVbV}WP7V_<_P{s|3Q}NARCx9VC`KtNeuAB=B?eJC{MxfjV zc}C1GLE(zYs#e0CbdXFk$745%RLtq}ZEu+iVjt#F^zZFz+iP3+R8enn?nSyFD^~+u z<`a3|dy9*XW*0(P!25tJpjX|Im!L3MQ?4$%T>lq&?ze+F>N*!X@m&g{M14{dP>$-7 z3F_-A^_3A%06sv$zpx69N!>UdbTr{-(KNhH3zi$$x+5imh3ZCCv?nnciF~d((RIqB zdXqgzuw>qd09pe-ayJmiYI7cER25bDtij01kO)tVc&ak!{zi*7YVzG?2|C``heJ%w zxcSF!qq6^#k-URnaZ|5%>jCS6;^Y*!iwJCs#nW`diSH%Hug~R<1sIkUyDG-*qTmVG zmA790ieb%H2AsVE&GzZ(>7&mu#?w?xuPD%JjWIr4~if<-C-ipq20%B0PMz>PrG)Nbu; z+>PLs(L0AU8zl6|3;?;#SuMOa;?2Oh9-opsisytHd^&Gcs9oP*_)|wu;As*s08oq7 zm0l`C<-}y#tl0;Yr}ujL=L5?gwunBnLvrqYgfSIH9Ia>GN14k!MF~>EYS6knmFzvg zxJhx!u&etAqsMy9R1`t!d($cR^%w31JC)aaL~K)D{gJn6CYF8WjuuM#tA0P=X)_My4W)ReJip=up%!ENGQ-50~&_T)h1@r5=ob27WR#vb=x4d3soZu=ci zj0mophr^^LBbK|3y?3!wE6-~(qM813dT$3MWT3qW*LRy*j*s&PQ;`cKgUnQ(TBY*g zvd#uf!siGJZ`R(Jr3&h*@dvOOg?+x+g2Cq82g`fR3IPd(j^02Lwe%-K^H$#dsPr$>1Dhg{pQHplc?N!=!uCq^(ZVuntlVoMflBmuIQo<=)Hof>b$MD_*8g9z%8`XwDt63 zE||jgUhlIoi>%(VK@1(CHOpeon}u5yUgLu+o3G$kyf3o+X>>=+$_x1;q6p##=S^aH zL{RD&+N0F~Oeeqnab~vDp<|We^{KHA%ZgXt6JSuECV)i1 zEIV>OWahFtV#~-cRl(p{x@6k-uBjY7*4rz?(ACHit3O%es$;hmgB;dCT!Bs%rTj~x zi)Fa6yL^C3o?&>~9hw)-%%mI8A`b1ak@$b7QWbgYNpC@)&0ZHd zLSL=7eJ7TLRKf1Z3w;2+BQXTj(N&3(^>(x$0&ITj)(+qC=;7H1;1>3$a~m5DSgQJAaY#E=#ssFf0+!R@YkRPCy-$ke#dbhcs? zZGw;9-t|QS)Nl*Us`GjiZBK`g+mb$sHv?PCXr?(7RRHnX<)G@wVXKXIk^1nXPY8-p zOP$O(oe+Z9=B|^($^|^(B37MNbc!fxQP4k=XAuFUDM>X9i^R;>*;#LPjs(JGg}KZ8_^_c4S-FF`kd#QaMW!7buGipRPTp0m6$m$4m}MYy}y#9yDmS6N!_0B zob{UCE6d7nJpbs+QP(HG#BuW#eZS(%oWIxQ{B`xSR3AxLj*{>5D*WtbGbluGKhD0m z24Bq}86HqcIu&vk)00I#q+E|^S$iJZ%nPR4ue6j zwG(?WA0O+58|2x#Yl6qq%#X%B8l)T0JnGpiksqx#>dX$jWm9#)YHtP^&N6eXx{=9T z2BSi^GRH%T6DMq-lm~$&WsGlZmK(|=@$HrNDXhaAUO+_r-EP#0uq^IIFqR!)nO4MR zs{6ZzM=VA}>;Cu@OH+~Jrdk3QR}|kF3|?6=>Z>fcoc7VMv)}IJ?$S@p6`4Xu)tGW{l?U21ADVIBU9tMs1 z*_fC261L>}2R7afM7j~f zg8SC1eq1Xb{g4F`pLnEq-AI1oZ2RUTNy?HQ?ZeHU1{b-gotqJnClq?)>hQ3mfMo2& z-Os!=%A|#-6a~F*BS}{cTCdnU`c$btcn$Y4x{gs-c(?Vbr|XinAaeK;`IpqOD{(*y zvSlv8Du-9h1A{k|uMn;&x23Y>2k4U{W^2QN1@Mdbotl+k@1c?WN#*#_uq|^K(f50I zQIc?}zsA$d412|X11CZTRP=QZw!!_47Lsc4+Ix3+-(da#l{;X@hI6fp7rXUL-Dwh( zPANd;i1BcBbxcd{&j!cRpsrV49UUm{dWn?Wf-Qo}r9@-uhvw@};|y?Jl$mvd^TmU) zF8jHBkUX%AO^X=96fN~bK3*7ydzu|R$K83vgG8xRv~_2z-;m>r4L=5aYvk#^$O z%F^UKM=H`YAL~GP9)Hn{YS8CUUR2cie#Hvi)B9!~dr0ZI)JOz#y(Iy&)Mjk~s)?)( zhA?*(>K(aUi@ZIU6c7Hq^1{u;UpbDF2maVb#jojG5_JY6Etq@;#nCD{6(W-%ishE@M&Ia7C15<`|SyRVx^&%c%!LXE~u+3aB@3=V?|3lXVKhLgjOUqw{oexOD(7b@i?4BL7+8=i1_Fr61F>R z_|X~8DQXUrd^<;?Q$uMbMP~-F~oq> z3trQ>+h!J&6kCA_8*~Xn?o`oaT~{)bbK};t_$nZ|T!Q_P9(!=QwG8mkmyU8ga%a4B z{so_td5-hdW!LQjKSQ59-{GXX)LmZZ;oj}M>~iFaDfFX^XV{##`$UYyqqn4TQ$&%_ z^mI@texs(yEDB2$Ih7}(fNw|~RRU7f&V~{sj4CG=QX=(K_=KV7jh72#s`%s#F{A~l z%dT?@ZAS*gr%7jeYH6@ZrDt4U5>2~Qhm%Y4Re5`ts%p6odErn7oRz65!&r*EtWvnG z+{O=kBVc5F9PZAWUhI@X@wJOy%6{A+%DCB-#JG)BrGU7Ugu#i5mv32LUk`hZr35yE zUdo-RmxOO3d<=|+9OOwd1(lJQSF0Rhq}6Gr%S9?ms)MnH@-#w5)aQv9GDYGC{k1(a z!^P1DJ1=Eg=!?`tP8Q8g2bi<` z)ttloZx)YV4i@r8^9cqlvQ9m>OzEh>()oHkbA6-%nvr|&(a5D;j3h7ZZbi3K- zRW$0sGL)El6EVcAILQv;-7w*R%~`KmE{-hU2SUXA8qapC6`@0oo9sfRc1~SO8yqG0 ziTpWzL$Wq(0e0uap~^oc>UHIa98SlZ&Z<=lkg~ntpkNq8-<;0Yvk8wE8)=2FChWOJ zNd!EEpWewiJiT}SRRrx8Ob^?ew*BZehp!elK-$vFuXK;eTW+$GKDcQZt%_kiM8^KU+nqS+>|yVtO8yBE98(?>fc1=5`X7lW z{FT>`P|R&*;8>-mL&c|LcYEbthl?1qr@&mOVMoU_xZv9LRrO%p{d@eRbhG+#q#Exr zyO6KuD4{3R*9Z(gEd~t0Vxr<=q?h=m8l2FDL*`-Hx9s& zo+5Mo1xl8J=cm~Q<898V5(j3M+g(Nq8Inztl%ZJsIl~`=d&tZaUmOF3Q_F0hY*&Sg zIGtR$#6+@ORnKbniLDc?Z|!X;d?&&HT36F#iP?{u%P3O5k`qBQpH`ky_t#=L&*}^k z71X6|)iuffUGLav$U`wQG=)?VVR0_}3bqDU@%rtFvngis(Nq5!AM?Q^iosshe-x>t8OJaHjj!nzMC@Th?4$h%>} zsc1k-|7>z|2*G&-F~Qm}-He}g(X+R@WMDG@VccVpu|sMix+r;4M~DtcS|T&K@F1n? zaG0^_;G~D&Qw*)nNzg_rJ4`;yqS3**e_>1-jCJ_Iz@LniW0!dl}kfVSb$Yfskcm5Dmu9{ zk5BmxT<9leT`|6tap?){>FDGxrJULSjI0BL0-`P=a9rP&*II9+q?#-Y-VaSDA2=88 zd_2tZm6_Ye`$oHv(+GO~t$X*5PfzXt9l_-7;aP~HlCC%o5&$WS}*299vcpClqr2~-ybedf3wW(6+ znYsMt{AO5xkTS`Dit@^c;Y3$ZHidC&Id2A7-yMMwvQ&&FGW_(BET+KjI*KHU+_QJ2 zk%aS4@=o^BWt6=1BeJ-={0VCx?m{%rk){J+S%IxD_KtPsi_u%Aro`JC&g(6(cPGWj zeJkf}(1AMI%ON4usQgd-fJ9L-pv8@r`L$_3$qGNccb5Pg)p#pylj8sinMBF6 zXh^xI_qyAoWwz!4&>~?XBjac;J=mRLbTO2qqS|^r{Q9A{M)Vs}Pzm);>wL&^t&aDi z+9(Qg#==?OZ@o&0oU(&Zi02rZcEFssK&G(SW=t5yPqHg>2d^*e^GuZ41==sPS#Ji*?)C8IK^_`Ist zHz$X!61k4W@f#;lX75i_EZ@jc3uVpzm!^~5UEvAIrXsF#&SaW-EdkhV6B+kR8Y7pJ&6{>Z_8_#~cI(SM3_73LbroAE;(eq3 z0qkLqVj~opX1oA@%RDE)a#0GKomdzSJyIp6qVopi0%28kj8oBUVk?PgcbrtEFQZHo zrG!U`d-6R?qQa%lYrq*&HraEaKDA7mVj1(n6`&EP5%8v_qnBmFBo}bKfGE0z|JCvN zgb3c0KT3fpN!=alF8nYFhtK_8^ZSsNRLDGWU`ts;LwTXG=XrVR@;jZLldiJc1J9AE zgJ1&8vmW_4ye2~t9JW`S_UL-aI$+omCB$cy(OGz~X! z^susB(w^_#U5yWQXH0F7>o2OWMAcyK!Qtr}FF!g8Eyc|>Bu~cvK4!Px)-HYh<;O=+ zDDN$?Xf3A+i`rJZ_8Yj?D23iK6(~T78^UXxK z%AOS`P=^WMgz@7hMYg~{Y6~y~{QjqEUd(op&!^mCsp5Q}*>Sx|W{Z>GBOjEeaLP!< znQUwN-TEwQ@Mys2T*d;!_G3z_R3+{HQV{(sdiMM>$hsCIFq>R?sg)zg1y6N4VWz(J zQAsXcGQc6#B!F{|D^4TXU>6ibhO{2<$6uTa0a)2~;XZ=9;@K&5q4NUB1Y-4-&FvLh>0zmX|{2P!klYbh;Za?7jPa=4mBwz4c##+2nriwv^7!LmIZ4N zD~*yKHF-~>%ACZ*bnl=J{aW>$qWE>+G9bEo7=)=%EjsekHk(34@QIrtQMH3i1GxZT;KrNL$Z#-Ek z2&z|j<#?`hqNj#~P^U^39~aw|gI3wjwOZ7@nwfSv*bPg;>8XbhGtXUj4!gf7ov<`? z15Hz8D5J)^=$#@6sk7AA7$73)zq1pSQIGrN$%Dj_A1e^xeYx-|WiCeB>T=VTk(II@Hv>WZ4{pwCpF&irz{CyH8(qU?*rnWHMp0agK@dJM z1Gu~7DTHVMXb6wwbD$18=K~5R_Dw{8y+j;2fz|fGi`f>Q!{`HjuTE-s3qly3@<7D< zGoIV-&P#c_-o-FO@SSpj9o~@^SkzabUXZ_#0+u#Ah)%a+Dm?o}0sb@3FAHW$- z#o|+m@dj0|tDsZjkvCVcmZJ0YXE_R75uL&7l`RSg12Z=$HyTUumAzSdACt9?Z&m=( zGy+yZ_0)9sX5b(=JX?w|3wzSDcxCbGz2ofDyA89fY}-`R8{$FLgx9be+|gGEZJd$P z2(+l5*_aMbPtC-{Bh|fq3>H5;y>E7{x5NfA0gKxu$0g+_Bbf%bEVqfyMRtRxpV>D^ z*y=dx)Kg_T5RXOTAozGtPj>AMIS4HzLY(D+MpDs7MlCVIXzmGwam^M4)O2I7&&0`_7e3RUGPrpFv1)`f zNK7Q?uDWA$`}Mf(Q1>FI>oE5K+V1S#i^%2Bra^CWYN>HerO#W~@`?`}je36%u~<2F z6g`8LazhaCnuv*1tEsFBz+NP5%+MmwT0C+?35CA19Jqzt_fgHADvZ0I)^VttbLktHz%ek zn(6+yUFU3MU0)5E(Nd=w@8J2va1A@t@Tv;L=iChK1(^vWu+EcnRj+5AQn%O43$f&} zTbW=CNrs5y#&C6P5=?oRimA|vCTKbfYPfhQG6sT33<6aFegax6pg7KTb# zihvzq0Hll@77y4qv6AF=3m}ZC##tR4$ZR~xdK^7D3~@!!Pl}INs=+s?SKMG0^aPM3 z)MR7ejawvS+<4;vG{?}#9*^>cHyek>e^@A~l#tJMs+e@(QWr()y=>Q=EVFZ`soU&k z-Jt~c`KW*kkA_JqLuQp@5$l&Y*kYUk~a8g2PE4y(qRD)94%k=I9M3c2gDHQvJ0Q7IyZo8F4Od4 zZ1?ZM`msk}57O+k(9O711<7!cx6P%4r9l%hb{WfB9z!6b33*mSN1Yo$9RLV+7^GbE zSXi3GI<;#LjbWo4ogCP}7yC%YvU`! zXwW5DdNX=|d&Fv6fn z(WA?u3*vpl%>f}NDYNDM{yCypTJ()mXm`blCdLIq^d zAoR+PX9E}k6W=E0(PkZ8kxs-JvWT-b6L(&jM@Gl3Bd2#0#BVn++G}O4(VRsflYS%e z+RLcXa{I(IWLF$q-(d61RXz_6raUCJ@*~6vkr-glNc&d@XVQU?T6Lc@N^5|M4+h3s z*c1+>*Fkk1uuXS@?Nx|35g9}3@+S4rx%Q^-{)*((N%bL>dZOCk{Hl15k47sSMp3+S zFtHvePxBi^CyJeih%$7kaW!e-vdy=nxl^f4vTH`>ycqW*djCMyc=V4EaiGB07g8u- z{)o`h3J*)r#=AZ-u5V3Q9-Isd5SR;5#1f$zrh9m_2HvDAT_1Z#)U*%@x!9F%8LCj- zzx%FwH%|psg=MCDzKqWF#XF21cTU)z(swqX#cl=o2r*?g zr?5p}?ejP*7x<6|#o;rqJDsx|#M<9QF?TeR{Gi&Lt6G0}$y>$!lQ&-T8n&Bs1w7Ww zF71lb?fUpWnoX!L#_^-JR---Ht*@8s<5%-nfLm4rLL~H>I4~SaF3b zWX5zY1t3w&AeNKdOg7;{hnXx#fMAph!iP9Hx!K;}B=fSb+MKDf%|2-7SQ{7mIeH(( z3FiFF-0+@4QUuupG{awzzY?@8uK(xumU`(S@kE(GmaHrfJF(3S8}~YOLb^r-Jh?D4 zcVm$2_TsqLb3xm0GSlrPsTB%*`SmtnXH-Kb>n3Kun753-XT+4*F=m@*(m?UWd8b(2 zH0bHJ+aSi+?1Mwm8GSxfF9We;{QS=gU;FbvKR`k$Ip#MDj2MrPVllP?RF8 za~Jf2;~_{@uQz7r7Z}H<>{ovn`EJ%^V@WvR?TwwJdV1ZcNbqzPA|UR zoS9%|ZCDJ&%bq5nG(sY?L2O_2OE(!8*>j-X`TPI(edKr!4-HY5m<7&2w4k8ogF07 z)7$2mN5eDXI_g6ZH0YwFx73a0lkC2vy{aN42a4vI9~$ZBmilpb?(qH5QiM-pVV#?x!^xdm--^S1ePk7 zThn7!kKVv48dn1y9Tao|7TF7)F%x*Uyu>ec2e7|A>0kwUKTOle0HK*uf$HX99o#x< z%W2P@r{}m;b(0_zHPNRuCX86dngE=xc8Eu3#vX(w0->@Tja@x4%U0%<34{c$soOs< z`)w{s+wHen7FI~&M#~~q-!7|&4P$jWX;F1{yYQ`hjifF9Pp^%e)x67~L;XXfW(%4w z8SqHpP@1$^A??+Bqs_aJ7jx@UF#1ze6xT;qjZF{q%j&tIVp(*yPD^@A=|U?qiXj^>w@`uGVSKR^*&k*=ZnYEkmPRr8 zhXRt70ysEqK3G??2h?;!F@Z3J0ydWh5Q@M)eU2Ph@-EQpInq9Mj1L^hKe53W`QS9J zutWf@xm}opjic5x>%s_bBd|plXWBs1b7ev|gZ#=55=m17(mPe3^e60`&;1RlQms?M zx6Y=l>GCg3{X|k$KCB+9U8neScj7x#iZ+$?!S zWDvV^X|i$s#<+wA1a8+K{Ez@A*T*DfO|R>;x6szr)Llz!4f!TR-BHIRZ}^njuHh|m z#x+h&bjFJ&0YH=#PZp#g;(YTgY`4z%2FoWKhTVejvcM{ANcK>R1{W`v{~SP4bep+D zWkXuInKmY8NL)O~W1Ur7M~!AP_p!cV1d1X&BVfav;oPJ}Yxp#xGvH3xtPRCox#DbqrZu z_Hyfwlnv%Mj(Z2_V#sp3+J^b~8+ehA3eE0FM#)UCglbKv$)Da^cQ7ytYUY}vmEnuH z(y8(Rr6xm(^m}-YNOnlARXmZm@WW`9O#e?>z*ke`XJ|FyToj%|f@d?Qq()AjZ?_Vj zV$J@hb)#~{*lypw@lee0p4M#N$lyW*uMj5HLu1`yM6(TN<#rN>2PWpZW3)eY@wgBruKcUWBxt&L#c8rjO& zHTDIv{Xp-WIcV{0^b`U4@RX#6(W?=DDNdy zuanl?EZG45uExP6om)>&>AyVphBhVa@nTmanSOqOndaOg!eUrq>0*-zZ*YrrgFOm) z=zo4jmIy@B6Q+it31+BfA{0{`fDq9|Xs?&)MHAQ=OqBf=O;}w7 zPcf3Qgy7DePcPNf+zaxQ^u~o;frw~oo&MHzWyqGHFsAaIl>u_ulvTyieT^TNUGAgj zmg!WmYz+V|Ki8*v64UCx;Yf!6v^_tsBm#$hW` zWj_AN_{NJA?4|rR&=XJF;QA1}vVOmDz*V4F?GC+STQ-#)dy^qRw@J(*2672XddAzI zSs*j&xR3ZZ771NDti%@8P2GsIlX95Vp*Qjx@7LcDs9P!$ZHsZ7)$!6s{rZA3USR&+TH2tO$2~*cgAQ9y}TCS8@#}PtbuJHa;0T z!AWheC96^t;3a=YnR%e`cbMPU7E8_la8bK;hXA)YS8*>MKg8u9ef7oU?aOZ`7hirm z`QqNANB8c%o4mo~Pm}4%78?o`D^wX>1Ja<0frDCo91#aBoyFG`)T6)5Z%P3oR1)JU1rr4NGe zwPIKZfRJLt4;DhWGyLXY+m`Dx*+WTxn>!DJS&dfFjb`4T7Wi}Vl;|}L%_G~jmf2tF zN>3p);tC{iqFe{QuJtUPtS?aRskPniw<{Jy}>+gO`C(I%{v#CT9cxROJ;iXP~wsBYxZX@*Xx z&s{ux^w7Cic5O(1XUCV0T>LatkN)<>y7cOu9X*&Un4}ucffy%v z6<>G3KKyV4Mr)^o{M7L}I-dsjBvqCP*LRx9tiB;D4(6a z?eXNtYQ4Pw5-Q89Hp-}*u>Ii_N)I{0rhoC@3+&PPL_6Lgh{;yYcH<|S7=+K1UsfNUb&0e#CXT{yzyrdW=j%m_2h@PT^=UiAug!5 z?o*jxitR&BCZ~`8cK+BF8kYY}nXDMMVeGUV5 zEHMA*s~7Jk>ed$~7H=;ezI^9!-pWZIo5|ZJ_&Aol@J-g|947APE$sBT(Nla~*xdRz zDl@PzVq?o*n9fhXAHX@^et~=P!G!0!sru$j-&l0eFsf#tQvg-tfhT9wnwP-nF%QRO!g3Y95RxW2aHDn$yHcGf=2Ra+Ka+uN>M zbv)OJflV3DsYCQr4tlLqN`f2KSfwQVWcWbnsc_e<@MG^bWTt?BCMQRys3%Gi+=l$t#Fb>W;NQd1rvEhB~P zD1s;#L(=ckHB1!HVq4#n4jrH~bLt4DBOW65 z_2N%_LOub-JXfjMaL1yep!}aQDUu^sb<=OM{b$$oLz7O69_*A94!}!k@;q%GDdj;K z<8?Y`enb~NkZ?4$Nx%8ebh0pm;9nxMHad&G%Q2_wH~H?}ui7VnyI<`DYsd zfNszW*-P!{5@-BhYp@XB@b1o@dS~R@gfWyOri!c_1Nb}%{WA1 zi+Wb&Qkq|X@}c+fbIm>r4N0qpl*l@L(p3}Y>spMyMcU{Vd$BbDIdYDmadP}N1qd{?e7`%&mi<-OziV+5BLniNo;#nx_eSTR zYSuV;qD1-n75^`7WL8eXIuy<%t{F={U)0XAwDemv#pJNnl0~SkVQLa~+r_5RtcY(& zb2p_)ZneW0$*pl&oUtz_Z-W4jb)4t^V|^OOBh{oRP^oT(SB$I0Cw)9$2UKY8CEJzj zW1L7Sw>C!xi_Y9-4K(Tb`%Jl$-ItBejjtjDca&pJr4UNEw~Mj%Q~HKiZ+`s#*IQrJ zG{{9phsdxn96HwpT_#xX#J}){6&P(tO>3+nTH5i5RaW+N^8D$)&Mlsev)eT)Un9!N_X9X|O z$Xh>*XHMIoTj(;RU`VUcXt}GJh0j*}i-!GGqC8Fr{0;3$+pfJ(6RD0&AEbJL~K2 zL%qoQx*BY?e`AxfYpc@svF;{@TQC&J{T?`rj-#M%&ma{G)_!pZ=aWpuR`a))h+_J# zp%V(S>PLFau7p$aZ#B9-*j(Fr%sIUsIWncG-cNnBnBt5>Q#zJDD1M~~#)90v2P)dbPPcwdJp4-aOT`{CoIUs*PUo3(oP+@N;NAAeMo?liBZ zikzd!|Ms|xt(*YEaqH)LSgt`H4|k_m-JfRKNE)U<@z(>+TxFS7Tr)D3SBWDLSKefP z75Y%12WNt3rcG$X4i{>rp}zaw%e%NE)(@rmm-BA`&HpepB&_+^e7H)&Q+A0zq<(1O-CmrKdcvwF_&(C>%V7QKP<%+HRGyY%PGb6qEIYE`_Dh93#5 z=tgyB_O)7+KL1TD8EUE^1NTvohK%v#|NUS8R}rG%VvzB$WGIc3@X~ew%b0c&B2Sg0 zycuQtW;e7ZCV)A3D>kwiwySI>T+58nP9*21Ze-eF@IXUeZC!y<4!`${Wn1yHa6Zi8X-4zD6N?xlAyTLP{rljZ?-nY(j!<2 zeh5#5s*gyYB~Fc&+pB73=9x6d6k$=xM!)D`sjykewd#EGtj*?S<$EoR=UoVR&LKY4 z|1{wgKWk*Vh*mxJ_X}eC$&N!8li)~;Cqx`V&}YqFMfyElakx9xOr4LB%s2& zW_(W}8XyaapxdJn;n5l+6HkG;B02+Z0#LU|+5SjI{ zOInfDMsSDBlmCi6yFWjZI~O90oh*@>Km#)(nMKXlsIIn-GTO>~$_kdO)H;>Gt(kgG z3uv)Ldr&Pi$X(UJHzBz7($gD76u$X6jN6X_MUP=UNd}(~U4C0r7HfXQj%Tj6)n|J9U&~#i{~o53#mAXOxH! zS(GUuOF_k)3CWR5edB?p@l~b@h8vkZq=Si4ZWg4TP&|g~psr6;7CEk@BQ5>BCgthH z{`1o>@7|1ft0&8u%jMy~iHY%^OuH9?}H<_9I zRUJ1_34>()-oh2|oDOGLW!?3@&UuU}03l#j%|T(hphAYkA<4Nn)d|ci$--FE3SB}` z*hCn{8#TKM7Z(1M9vnF8R#%k)iridjYye@XreJNct7-yBrNNP}=7s$^{(Q(BdqsYm_qB0Lh14iJ$T^UTu zF4&l!4YLkr^PFNs+7;7Su!j2$J)_g_6N+*M9|cUK^oJPWGptBh+q0mb5nt{j#H_hxM-{;aw~Ud z)uWySadtp`bvOyis+^X9+alhge_t;g(c{7@n*0GU>1|*q9~vvc0eGMO-*1HHUyY~? z&}JZ#ZB@IFT*e%!>Pfv1ovxo=IwMc=?YRbEt$~*HGSX6jXA*(!u?bkO;A&nL%3 z%4P_u9V>Zbzej_m9_p=;Q~1U^lA0-^IjW8!=FZBeM> zIyMspmibQ_D5aB>vuoGQ{BXkTOtlHh_LPspG5@JGxaPrQpjAw)I4Sv;(ScB%-CxRX zCHW(FT}_!aIC{<2{3kY_EE`M=of)vu0rZx(SiGG~>Zr0Rk$<&VoaS~yl{MU$UcbF} zrd;Wrp3IEgeiHJz1;^wm1&g`!qy_Ry-QXY7JHoMgJ6`{`CYX^r()8};Jo+cU*J&AK zu#Q%vCVtJgVm%quG5zJUIZoAEXT^aPtoYHD?OPg3D>A!ZXqsNVbnpQpNpfpE_@q6P|cBwdS}{VEGop~S%)12mA&af$#xq9Ky=<;suzjs2~vDfQf z!Sa&YYL%F@0C!^{3q1(dJ9ky+DfzE^Ryyqv$$I5{3AVE4d*dwZsvS`-$fq$HP^XRP(fJov%fKdu9olW6ZYaj) zcg)}K`}6ENrL~M;JeTu(zRJFuH6oDxSi3i#9wBY&2n;(`NwzxCTo!}0B!a@z$Zqx< zyqFql&L*RQIZ7MBvx$0xS?IwXWz3A+=YuTvCf|QVk#B0yQL#Fy#p2E)71hDeeKEL( zrQ)FCtf@WnWqT10UWyX4BUZRw+wF&>Ai+O;16Z zLdJUr1%;}6--l_h8kg`$^f1M0kYOOOH9)b71zDCh)#I9O$Sys}zV-3iJiR(L91<4NrQ5AHB_6hoPpnmr=9C(Z#7`j$)lbOuvA-$=F@bpd?&u2_hBL^VWv45LvCv3cpDPLjgD%c* zN1}2biGGKu95jO!=?1Rps^_b%BP4xrtLtscR284?(j-?YznZ*E zGpyalJ*zdyzPJq8yg)rqPYO|KZL>oth#=b7dcKj?6MU0T?Zq)MSg>_+Hu^Tok!Mj< zj;R^HReHZBt8I1SxJs558mHaH@S zTvh=rqX8QkS!O3SNODEf-czg6Z!dtrp{FLAAZw<4`(Pwrg{%v7nZn4Ta0e|IcwXeV zZWpp%=-?}-0&dnAHfch8X5&B}c{rjDT7l2&T_4eO#TmCrY{`)J>;m(Bj~pICjMEt2 zn>v@tHtR^cnPUW3jVTPDGd7-mNOrQZXlrE;PfyfuJk>#5#l-=xibj z-avMRPzSwm0j0QUKJJ84H^l&xON9Y3cZB$_HrYOn#VDQdwC?MrET9N?zvY`^=RUn4 zk%=f?_pHE;T(<&TVeOcXP?)y*JDa+=1dj;Vtfhgg4&I$|s#QPlnjO`tCdP-p%FgBM z_3?(JD`%YpH+ZbvL-dN9cWp?IX`pQzg&Q(huw`u>$4m;yo7G&m@l(N(;rqTD zvQBzP!g+0{4kv{=o&JYv9W=t=UD^lcEdkuZYln7y;s0#&&IZX?#U7t2rfoLEC06Y1iHhD% z+G1pI>Sx(MsC@p*ug|{YP`$YN?iH$a=|~I+jFmtvFABgu54$upGO#(%)sWS`pW*LL zA3rpsF7TJXd~qgW>{{W4Y;R88R>#JFTN`AP)2 z0D}f=DoP?FitH_oqSedT=NDjt5V$I?$0KtsV{~gfqa0@6u#%^m7aKz4f8VnWtp@1$ zb*9~+&9(34o@#VdFmEfX#D+Api{_d|r@yZ`73O!lbqXB>l0x`h7|`%6+_8PVFl(Wa z`KQhE6|(?=Y)B;WL9n3%q-3hm!YnTodkb5WfM8rsp6=xLEK%tO(wj37`YHXwO_o%J zp_-i1Mq9)tfucCx>f_A}%DrbRgB335TI)4eAJgVKcO&kU@D44Ee%6x-7N_Br4k6pWc_yuEld0Vl66p*7Ad zOuu{aF1stBq*Mt?C8q6VSeB4h!;z4u1|1_uP&xz{ikWoBUtoX!(k1?Ws!@w%TLEA5 zcXagT)%oOCPqA>o?X8Sp`jCK%r>GX{`nTbHtP&VWhzZZmO7Fj%%jOd4a z3&eFYL?6KuL%Yd5q5#X>ci3VzkGb}W)s`otZ|1qrW#43rrl8d3lV^I1ixJyn{ELEgd5_XXA}7oFP-t()d-WUe zKl)IiRH>EVBg9C;)LBAe6MV>->HKY^t)k-mO)XTCeI-m;4zt?T2s0t!)9(&)T`rMv zRsJR`o2}(J?P!sByYbH!#^>1C+8SJq?axPwVD(23da)Y$K#nvUf^5l8edS#9!tbIs z?gS?Ckqs7_=Pt3xfBN6ER6r`wv_Rl5!f)A1bB8F-sHl-OJEq6tyd!3z3m;KB3uFeM z7r0dza)&qb#Bb(GtqZ}<91mqhZ^Q10lsT_l&v~nIud*-NWqa4xQVh0IDbGXrsTVO7 zW2OTG-_u3CxhiyelwU{bhYMTBwJ2VbU%o4&n!+yDtl50+D&$Ke$ZD2ZzgwfWTDa1r zUG(=9Fbml~h^tXN#)6-4>1YcI(N;oAB6Vf?(K53eiN%JZuqZy_5Y zO?TcLF@jPTq&(SL@>$`e5wk7FY}xjjF9lesbT1AU77tCzYX<3x=bTz1jrk;?gDpZ* z>m{(j5#O3>M6Y$>%Gibt$>-0PKD|QR5{x`GU*b(>hp{SW0eX)aR1(X=O+X{QHLL=x zb$LYHi1k&`jiD6F_I_RNv5go2Bgw{cm4*4zrY_!2NgR?yRD>bo&Rm0kB|xQ=B$t{S5lqG^@0_ex@t6Y9i>9xJ3a;w|iyACUh}c#mjZmMKa<> zZ*1&u@anh~lr~xAYi9K|B%_QKL=6-pPL}(&L$IkqXG(e;1O$?4-?Yr^j$=prP@X%V{4(NB|3yCY6%{9|Fm$ZgdpQ8pRO)=c@6n8KvwlS>3B_Ho8b_=)QMujDTmM-5`Hsh#1w~R=WE9a_8i3>M+2= zHn`lcb(@147q;Xq`oWZN5vbqHD|~^1&(YLW-9yb8yoG$u#H-{M<2B$Ak`h+wl;ooD zAoVoS7@8_AWXGz>Ntz-jJiRZ^I5ZW{NaYi>k(p8CaVgk$EuqXC3Uv~*Y%A}S!`x17>3p6G>G4mQEV|^>$M0C8G{?k`G3GRd&df&@LXqFHyu9Wm4kMZ^5 zU-`~3%!g4Exa@~exy zGXzlkk;tSCB^oBDkJG=yhG$S3+@DP&E|9(}kt^2fzgOJuJ-sCCi6-`(4oD}3zDIS* zby2#KFTpXm4hvL_f26t26I7^g7;g_I;!i00N>?8?YO8gjUThgHsnXhtC4H_-tx<=x zW8zOpHO^Vi)Jy00*^S6V4w#jIf=gx%v@(HCFf4vg%{r@)k)ignA}B%oiC{j|8~5yD z#ECazUC+=kt#(DNfGzepRJ0>1bhX_q$U*lvg-bLZ=*4f(6lxN)5LY8<=el(XPk|A| zM6!Fy61~N_)%L>GerUSuM(kdluZGs!nWl{7YB_qO{}1M;%OPeJFwY(GEH_8nQ*n6Y z{C~d#v-QXrQ;{0t$!a%G4}YuaTSyNu|C&>?-QeEDi+O2M;cGt(C3sd0Y{ z>l6+CtTMq10t900@PXaIzEq*4g59+IiPT@xCGXqbRk8Mr{l~YkKHIADD>xhv=9F4D zL3|UWb@eBz?y`!FuF`i^NLx9SpI{vA6l1NMzB0CWcR4!0VHqM3RBqYad;RtF`yB;| zq-K@QENk%8$wq($T4c|B*x(d7S}0YFu&@E$XH{FuqM(8XoZA&->@ zibd%JYOWBAuG&_<9iLFkCRzG(&Cs~{11IZwFn3P+yHoVY~P;P{1xY@eW z2tf;qkuxEOqjT|a<0kUbMvhxdKYr7ujRwvBv>K~L6@^t({}^nxiGe&=b0Mq-h#usX zsq*goAiW%vKY9<9xB0E(CwA8DGIVHxcX6J4G@}Kv0AeeZxj!LE zQB&#I59uW=L1bhx1XEE=K`VYMyi1SQ^lcndK9FB!H8?}9*fa^A7^7(!+BA}t9o1?a z*6d}za9xU8J&iAGiz}NW`v^Ptov7=;)LS^cWSffvwp=^o{fzFdv4@;my@^7(Uw%O$b)ytfPyVXP^oe6rrN=T{n3n z;a>~?)H@^nK!NZ^p6`V4q7bs*ZV$lawrgf{d<`zpr9D-Nj!&2-lQ`&clrl!Y76Zq0 z;Gn6CrAGx7Zsw5KJr7@^4@NC2iU*#YR7C%FvNP5u88&VGkkUBAyj&Hf+#FIl4vfL; z%EhmSAY^iBSU@t+YRg5tyw4{tk>Sj_;c|fF1=;6c$-c+KmPydeIC7ghN^J%rSCqXW z0dr^#;VM3Yg6%_}KV}DQ1Id8&xW_ELd1XXY-Foh(d1dxULcmC&S@Yf$D6qoV2HVPq z3fg%HZ<>$^aamVjE>YptwNbY;(cjZA?tQ8B^wHm_Ab#evB(~p1W$W_W-3VNQ{B7?I zJG8L+_Bp_;$^cm|W*Vs%0Nn`Um<>?C6^u0%o1V3;*9ysnZSj|ji zCLx^7?u=rks@3POme9Dx2vCx@#(mbf#eEk+oEqET+mUEaEMm7&0XlZ9BlTV6 zco|xL-8ut;g$w0Ah5yOKWE}Dv&(xZXCW__gC?OXHIAC9XS^l|qcl3LmJ#KI*fjkDl z=VO8*=KfON(l^<()zbN9>0K(pq~qcR-_lOkxY2-#nMI`QV<-Vlwa3eZ`-cU=TL{LclcS_l3BI08BSs_XYE=ZC70C0G_>qYZ`2+2eouBJUEH=T zW1-<3YCrI}a=$Z0aHZAKDzwM`{6dWRvSoI#yhC{{s zuT}RCRmM3j&Qm<1hKjfEH83AA4G$pT8&8Y-Do&*${1>y;>@U?$r=EFQJn(l>0oauv$*0?3 zhugXoIvIqD%xMyav6}6BXzw9a>oA}!z_Mb38jZ{Spp7+q~4gB!5vY5OPOM+Vc zabCkNVTg*h5jgP%*Y(FnOiK&$d$?-tovn8bAmrM_ICt1z?R@t)D9!oGd4E{OC78}a zWM#$1G!iV?UiPT{X7!si;NN-*?%p?wkx1}e2IM{HD)$Cw}-+;2h7_aIIaad;WpH9C5?d@nC zueoyfFc+}OA7t6MRZ8|7&P&B1clF1V!tpFKxG9KtSogMfj90n^AYlYf{>o_8J2`;m z()`9;qT)hEc3p+`_KG{y`2C$@{ia! zM?`;SuV?DZbUfJBpvzRh{nnLCS+pvgtQ3gln59_#?2wzew>dU(N+6~@FCH4R1?LyN zPF2af2^t?}vfswk?4a3p0iBy5Eb)YQE@g>74wWM8Y^16f#aK?JfGZGWaWEXiC!Wkm zZ?P}rcEYGx!eV!tD$U$eQtAId$cY6ihH<)fw!c2LvEiDu2tyHy+E(Ve!s5yq^Icw{ zFLYqihbcvXiCn1yA??3@rBZb-TOcMe8>;{Q#zH1Arh|-|wA0<6xbTPYfmHr=q%V6q zOF|F`4@-BQ_JEzRtY)&}WVEIv0;xp8605BxHb_O^W8^?ZwuNL;J>fKZoJNY#8kRC> z?+~WBTORsZ^K@`q7hS`eHd8;)3-^diwIb3HjAK`kjoaqATddttUA!QNWcPTBEOru^ zPs5V*y5ObwUuVKc2#lZGA&f9Z_*W<6a&r3O;?aYb7mv;g%!N=yQ)UoX_gsy_)D_aW z-@kurhIC|4iLv}D;B_>c5v|D-scc;M=WCU!$1&G$wIe37UPQD6nrt#6*KaBi{8n6Z8dEDy&d-|5JUqUQF1BFhHDfk zdFj9Da1ex)W~d)mX?sum<^B6%)=45JtWr|^W+#f}CZVRgs6VtWo~WYDGz1#dY1PJ9 zWGLy~Fe)3>*MEBT&+oGWoy7F)_xaGw4)%70z&LsyK4}K+9$R&`Y>w>>zvi@P6rd5} zx?%-SIg7WK0+R+wtQRL6V^Bq8CA2cYV7m^Q=R7-W7i@r5=L9w$0tQp8NwVeEyyN{= zJBXw=fB1Q5Lt#&8u`+PF{d*(dF>>hk_+@;R(lEl_f}8h2@2#x*XK`BA&yMpL+b8eq zF}Dku51*e`Dgs|JK-|7ZBlY>`ZZY4r+a*)N@&<-n+Tr&zaIl@`YI6D#LUvxTsRPx4 zP3gjXbYV5dgg+y`CjAyp20s@%$JRwEl#sl_qEw=Er7zh0W5LMlHtc{DGzQIqWdl^h z=m}_NNZf!9)8?N3oR3{3eVZX^?v9LHb*%~Y1 z8@sN3FR@*-C3M(`?TUa))Rt59J2(cU#|v(du_3OGkm02-s)-1dEbil5)i!1wg0U!w z{RJjBwcCul;AnT&2>ly;_+LA;K7dYrj+r&2#ZASJYy0tD2m~D zN=I(b3DFh-)M;310jj86SKH4hNWZxH`RPxSfBf?N=^NmEr;`_NAAS99D*e~dURh0E zzP+C)U!@s<3?2hMqiDE(hB8Uh9zN1blp+$)0db@K@6TRH(-q; z&pZu1Mku6MM#OLloh=r?rADxp#fkPGiVqr1S(%!1>=-Oc(aoZ#*q%TYu)wZaw`>#9zXmWZnU4h0!U_!ImsamOSM z63xVg;Z~4GatO0Z#H^G`?^&vT`qS%IQx(f$D_aU_VjMW*>;Mf;T*$z9A8B;bRo;{A ztM!NKnr!YOCyIPF_J1yF^4!ME`)rzkVX>mQQ05YK$sd3O2e7m*JHO}AVYp}4uGc-_ zYf)^w%$+>*8Q9Nx%%uJHGnj9`r5sn?J~reZqy_A_v-bwLev3H&T@kk9C@u5P%aXeg zE43&q*H)wOf=RwqrUG4z0)9c6xqTgH2J{geb>$TWvJzbO($8~JT~mwZ+I&!3C)cMz z#Y3t>KgoUx<+WKYp_o$2Ehncy?i-|Qd%dsEtUt}K$;T9HQyII8DUvCVlJp>L`;R|Z z?WouF95xY?QE1H(Bz=wZH5B%Er%=>I+_@NMrO~Nl=_gMo2X+$ets+Lm9MN|50)`0l zCbwvUV<-qKV%CF8xXgCMT)^+Wtz1dGc~j?#m$iR6tpXz;+69K^l%`tDx;)*@g3D~Y zfI-4xxM}+OPsF@#(`)o1x0QNAsId|!k)?eXrMG!qmPonG<%3s}6EGwJ@&S`4#c$Ij`vDJp)2c>|{zjk8walv- z*~Ho=(T&}4@$o_*z>^=XChA@qqkAwR=9vk;$Qj##bI^6T-p0)25o#V~th)XT2%TAq z8Wtu{F0*QLS9k#{V`&2&WH;*y;%Y*v6s&QQvMFisr6rh&Typie<3n02Je=91mE-HSpn0V}8|ihGEsVCFl4L6wi+p%hG-QjJRVMiQ3SNz{Q_RN=iz;DH-Q{9wlI zkDkD#kQJbrB#*Im{Pk1mjf#WR_}Osfbd$G_ANGhZReOJX@g@GlG$UklypW+PH6uf9 z!{;9>9IR9~z4hEYo7CfT*;fskH$tA;wWp31xOg~$VqJTvu{@;Pdb4Flw5FrRfkDN0 z-@md+5FAskH=CMfhH?CK9utTXg0t%ykf_~3ZfGfkov#kYr+0D3ty4Ru{8u}*BKi4^ z6-7Ew?AXd7bh&ppshUlWA8z0K!E2{fD3TVs{-*Y90_DV>;_GwzEjOR{S#r!Ov%Ta& z+`|t|jJECrjIrKt=Vrbxc{ED0yk=FpkWn9-V%82#j{bkfYsfQIJ|$_uf2z0uYN3$3 z;8y5#YDz+S3i?viFSw^4Z#frz^2Phf56^yaux*L1H9@o9c^H#d|2-f1?zCjB=%z;n z$kNg`KYssnmH-V!KD;7KC4RB)Cxep<#n4)e7x(Ki0xg)ZiN!PROIP4q^b$jta-Dp0dgsoovGW& z$_O;&cH_O1g*J<cSM2B>Ke)i?elm zWATLBMs_U)ciL@Hzx|8E<(H~3c{XF!T9>i{phUtx*}nJ}!?hu;`!1aqDas(4VDg=(%&7^l@^8>>K?7L+wt z^sVouA(jo;(I#7(C`Ac@BeJ-Hm`OS(yCIC)GP%;;;)Z_m#~-hkF%`kR+96y{bq z{)09cmtqHG3_dz;i)c;5$5&N)++4FRxbxK30QQe+`Ca>=TBk4kZB=jc9hQ0<{GnO{ zGKJXUDDG;CJQok*>xfT`jS)(MAY8&9*`IE;SHHlr8G^RQ8Xx8dSxDw%02}OlC^ogl zh`FS2io7;Zg#T2v_=o_Y1v$yO93|`8%Hgu9HYR6u=#1}af;Com7( zy@H)FS=1aRQDbfx>RAN{pk&)>^Kp@`oAhF2;9kQ*u#rLrcrPXmf_Z zhrw{HP-f1+O=rb|oeU<-OLJA3?Q~|<0uqmHKi{Ie{ID@2rD%hv#exb$U<%e~B^LK) zoqw^X$j$kUG4?i4BVZ*j7KSZ;y1y2#2t>WF(nNi#{Ay9pGJs3d|MAy!Ts0qJlg$ib zRPn)!hwqViJ*&1s@%m0P<2$^>Z&cs+Sm8KImx zjY|+Av)H6yD1|XmI3-F z!x*dCf? z+g{|EVYYZ_6EAKy>f`;}-yS`D=xw<2CNI87KZisH#otW94f%1HgXVQzfRL2#ty`dt z`4NrMN+H3`)^3Hr3UlJqkpa)*!Li%Nx7L zW;j-Vv>U#>bH~=#%BY}vdH-yXQZ&`%b)CLwD3^;NSSL?6X?bJdzOP{M`D#C;Jp}m3 z^23~%Zf5bxMX3nQ(uSE+NSHVKbKitYnWT22FZ!K=csK?O)%$%?C8#5{hr-c->}6(rm^ z8&orabc$(wc%^lB^aJeNEO%*)dI&pG z+Cd_T@4@_?PUZzde(3>GTGH+jQislYK&v{=#m zYpLea2mu)ZpYj7fgO{>@skZd(nopkp^FPyJ@GKZh7`%YZ863W)imnQ(X#!shKGhoz zK((U%4pE0mujb1?{o($PFTZ>A#lvt!Y0?`5-fJ*Fq+PSfsu_k}g(&c>Z`b>wjwUw` zQK}>=&9oBwqE*#CH~31KheE>F8n?KQo%qw0%)V;Vy^R4Sz|~ZK*iBu~Y}!pB+K?B} ziMOi|@vqt)xKl<`uT}6a%c!KvgrGDrI!b4FhQWJSB@bha-dmu@F-KXse~-~OtaAgb zN0k2knfZ1hujLpuFV+ydYN76;w%Vy^2qm=B#;G67YYMhbLYsS6BZvEi^J8)JX3IT_ zYWeG1n|7y?B*g{0_695VXAi)#nSoJVh@P`fMNH|1gNei(Sh60@>cw%sUYlYgY8aY%Ph&J` za{4EvmE*0BCTj)^We$zpg!l#Ywb+Nnzl`?@{wnIU>4osdqSE?}V2vH%$HbF|s z4(7rDX>1%The9S)M;XjxrQ__OvkL9>6n;^$~wyWXQ{Ed%bpeh*w|lX*%6Q)xo$X#zgDU(-ok7 z%XaMK%D&aM8@)OkL&i!92B7DbzPr~ZM}WV&Vset8|!gy-F&zX{TnOu;c~0=CenaefkBfBvyO8K=-qv1LuX94*a-y&U^BI_PhUyp zi_466K^U6h%1~sl5xF`4Pj?gbSXHdF>EugF9feoi9<_TNb;&7MOg@f`gLg~KewjTW zcP}P}`Ep3!v>P9L3L)zJ+NXimsCbIDXo?g+V)mCdhW#+ET1>g8aRX?)Fgf-XVyv{7 zT2k@JZwjvlM|<3O5O=&$nn4d=BF5s;-%2I+zut#cm3o5!tXY<>YwD@GXtwixq>g=e z@=v7xa_w!lhx}*THacPZ9f0AX@^N?KCa}dWvuGV`Ds&X?q4!Lq;CTm6eyY#U*8BTi z1@*_u{~cw8gGWX5U777Sk)F!ltzfC)|C=cOgd#a)nL^!jU8nf($kmOnq3sq0JC_js zU2PVUyzl>f4y)5US5$@Pxz$DkK_M4~eP9TNR;#P|-~uPJhDhxP2qsUkRrj^~%R~Hy zFUNXfbVcYE<7dmPDgw+Qj`N|WGp?Ifs1I$5bF|lJhLIBZqv^wRoMmhTkF=}c@M4y! z(`^ASv{~%p=((#K> zZ{dg8le})^=@v6oDZqz?eX>9ayG||tgfJAbUKz_C-S{PL{8eXb-35+aeBa!$^36|+ zIREHM6Bnzh#eQ`K=#gH_y*{MJNo$9hs&weOs`D=)HnXtX%?M8Ea%N4TyMNKb+r5HV z$5~fIOQqK%>3AxlSX*+wswj~{9Ip{;m@cUggp#QpqJ&!o4umPWI#ccT{=D5TAsbei zReC8Dj#1Vrf8D7mD&H?jH4uQ9*3-7AOPI?V5o}8bCRpPqw&+r3c_c(px@a&#IIUt6gd?;gdtce`H(8$T*5WISmK`&JGRpwOfz zc;r^*X?3aZMOP;Cog1UK1Xsuo;+L0f;qa55-La{(Yqa11-)`I5-dq?VxwHfXu_Y= zr5KT?vt`g$*v`Wmljf4Hry?VvNIcX#Cm-+D4Fw!8jq19+K`r2D#Oq|ok zf6bb;bEi+u4&J}@Ztd;G$Xk`RVd3|1d4>+1Yg`mWI^*6r$?EZ!o3jzldwXPQc$*ks zNWkVluy3-zE464P&E*m~CRWRYC7mwm79^px^lEn@iHp@!6NG3@lV3W7Q~dW0y#twk zplrIu#z@rhqc3yc)aNxF{TPLLum@_O5Ta5nJ`bz}Oaiw&b5S*;0u2|`e#f6DmD!(L z<fqv_=Jcmf~{N2MoNH>?274lKtbF7UWb#Z*_Fb@6D&1g&a2 zJ2x@urQ4*BX4&$VNa~%oJ_9mgbON?MofNWqD#4VRdrC2hV}{>#E(~7R(EWc3YEmX){n9fz6@%wtn3%JrCa5EX=$%g?iKO1syKGn3bixasub(aSSV^5$dE zOO60X5^=~BGBQb=N*{!;U5XgnK07bJFX=sjdR>L1TfQofByHUiPgx!*7gOGywh&Vc zu2pB74#C(5RDm6$nR)UO`{cA{KZaRKR!cI}A)@Ej!=ozrA}G?N5k?~DrE}DsHl&^B zuM>u$qLkL6Ny)P7E>BMB?`!93ij-`{U`IV8Eo9|>%sZk`dlHOU59(65>@bwV##ybK zQTNqC#tlQCxGG^wD;#m@cq6Wg*3#Q~Q-_C8X|U#MRY=pfnd2hLZyU?AkB(|rM-2`@ zgst@|`8q8m3tl?13nc|I5HTTqT1rLjrpwS`3wzhWHEO&$Yyr*3)S%F+W~8%WWnG$79X(Z++HL2|Irk9d-3&y&AZ7{^etQ~Ux&i| zKNzsgKp}bZVEGQ@#a@yrn>r{Vw?e`*I){jfzBNt%qk=}7_V*``nMCs$P9^&(gqexu zSnkOb*J!+(+N3#Lta^RGg;@6pZ;^IuG0V38R&DgOiKjUBTg89on8d$p*0u>DYnxN6 zb#LA!5mVm3&)@>BK&}av9zQf9iR_Eu)7boyNnowbAnMtv3jr0r_?cw^uAqd~1%g5_ zJ4{L+|MrODC$tgryVTa*iIq<{Y$n!YK4obCXco8`c5Mul9SpQb!OC`!8E;c~)PV8p++Y{t#g%VOx2 zLGtaco`i7>+$r;Sw}jiFpd0U$i^RLm0w?upL4V>)UhM|SV|Up_lt-JyV;S+=8-LL? zSoebd_wJV6tG&3|_f5(ZtTu*{Y0D(Z68S^j-@SX+I{!|)LPksgvbChX@k!~K)4hdi z=o`meW^U#DeH#DMwC;yeY6ebk_cQ$2DcNGttd8~#~l&Mn%-wH1D%e@6N{)7l8T)qg^j;@9t={`Awo{&ZkC_X!6g2M%X- zXRWwiRgIH81}9j4`B?}0x*b&RVz<02e%o_xd)V~3uDg$4X2}pM%HU*v@h%+>OxdPB zUkBe-4d4~JW9xN0)w!G&?ACA#el25$TIoXS9(_IEcT#)`cBoH!FY&Ho|0tDtttF|v z@05iXb|+IfjN;$fxh*f}11dHM9`H|9bW;j$Azztg->yy*Hbo9rBJNwX3!b~gqUlL$ zd~L2e`gzw3q8p3kZ7NYKRlE@hXeOkeBg=T8p2YDpo=;wRDiAaq2-pnn^1=X=ckT#8(ZJX<1npg-(&?2>v$J@5VTzT+~+nl-A++Vf|73$7-K1Kf= z;O~{SOIj~{mJX9?H}jgsOQlUO50lrgZWmW4)Y4nBUq;!*qFkmB#qpR0KpuS^=Ca(U zTzRJ-FU(m5yiB`Mk68U^cD7hYvF-;cCAJ~i8J9aGqp($Ve7fm54kvuj{1|j>6s$dX zb(RhapaQphsdgG{`jq-_M+qVi@EvMll^mo)!t9zd-KtXHdfe%_zaKqy9I%v(1Hb^C zN9-rKg<&NGi6^#V2B!&c23+}*xSf-f8p%{Jz2uaVp^V2zL>dau=J)&&zF^bcTu#0{ zn|%CuLeRjxYXRxBdfwjcZTnns2JNagMRAlt_G!4aw%8$yXYOUfL`RaWmV1t@wSXiL zCKO)eDt=J1^W)IV$7E`kEcVsXCx@kb?|OQ4-8Zxg8`=#sQ7;THvd=g+zyCNnef;pj@+|h>H1pEbS=T9IVB@$+ zuv|*j*8E<` zZi6I>X?Apz6DHErlS%bH+|koFrp&u;&4Ca+ghuJ$L3!B0-*PlzW??4 z(|?`QCRbK8TccDSb311~QiYFJ8dmN6o~M^sKS!39*0T2QX&!dZF2gpZ1ztYlDH@%m z`gON)P>nvttDnE0{PybC=aLqO)FY3|Y~D@Y5<7LM#-g zzav#+E>N3;*<-1OnO<@|T8~<(%O;lsw;Y)anC`Iq|EG(7wO43@{wn0x26D&F;n`O3<+WTW_qi1e- zz!N~LZ7b5-R14o0FTQx2QWq-$rT=*GPO8U8V#aY{zUer_TuM%T+QP{WS>a{hwt!M^j*6-<3QuJ;=IJdM~E(LC;^{^SD(u$-hgwk>t=!r2aM5Gm2!@(|m zs2Ij#FhzfvW`(pJ`g@kHq4vxG5NBrSyig*;{yk1$1XEE~kw$=qU6NNuyfwf&8L#QY zS2E2Sm+A;@mrES1ls4wt=%wkXvI`sS?Lq9!((e?cy~_gs*t~Rcz8VV*Hb)oWw?-oH z-kgB@{N==^dHb_4oUG!hnOvOn+dVx)H!43I&+s%K|9SOPp<7VzSA~Sw+6+su{j6Cp zq|4vSu}LizAGN5T(Dn~D5)Ib+(MwEo#5`4yIB{*3FEjnR$XltD)pmAwb&wfwNj-xU z-vy|#?_zSeZLQ)Lxb8MS;Hf-&i7kZ_l?mYKVa5HAP`chCPGiaXD>_b=t?g8Iu z%+jT`iJQfHJeMZ%P_Goq6V$Yf?AA+L%FfIb?vusqF*DHom!Xqv`WOV`(()w8(T{qFHS$u_uONSu1ZkR=h5%E3P{{j79pD>EXEn zX(E!qHP-*d|@k-&^XN2!`JANR$TE()36s%n_TXv@UTs%Hm>hbV`>w<*cJCj8V9tVhTB zwdEmeY%*T|^)hW1_QJIs7S>wVb|VFAtUcQ=hBn2<1a@dV-V>UPFJ0C{!|7`pcx0a! zI!j*U(k|&%^~M%X8Rz-rS+>ce@Wi3k&Xdl|n`qvmNu-r7nnN1aHs-wCs&Joa#Agj8 zs3&wqOL zE!xov_zJO8_9iz9iy(~GM|R?c7cAQ$W5HM!?c~N<(&Q+&6|qstWN_CM?EMu8I@i{p za8RD9!kVXG)VSgUECr@`%)+tIRX9-#{-k(-ObzBd(UGmNZlteF(bNplT(*0_uhb!N~_IT+#dG_K1BgLSMAb))565LiEeEl zx1sXTUEK|pOfA0kqQQI1FHVQ(H}3sQ`Ly=tl$N1bnv#^O=&7-Kj2hD^-@$uiW__A% zzoZ+4bvB%U+$KI)}Kc+fru^({2*wvwl-Tg*Y$$$xc<0XSIssw10&dE z0lMDI()Lkd6x6*@oHNqK4fAs$Zqn;Nv?4BbG8Xml#@`SZg>-rkH4LEFM4O-A2?@VX zuJ4xXoJld(oBGUpBhvIR#lxuw9d+pI@3#h&pWJzB!1zkx=a7vCuaw>L-xztY$E$Dv z!>R~()rj|S@KwSMo*^jX0iG-@_()^AE)rgS&vi?LyQ(uwd98(SA~l9`P@1n8dUun? z{J1>Wuxh&qE_lW-5PT*j+| z7qm+02y{1b?CO)Y06OV5gAgl_ypSH7cG=2akFAAv1WPZd_H|y^9nMe08tOBs((OoOY4LR?6 z@;@Ix9MyOu)R9nW?-ggi;&9W*;+4k{?~@fl1k3lib*FtVzziWtLr7IzZPZL}b9-2{ zW;&oLU&Em!nPS<_;zU>E`DbJ5Ort~ZZ;0#bL{(0emrTgN(R%7n@LOu*P<)~mqNV1K zE&UPa%?sSFR+&D2!jipo2Z|XcYK~PghBkWcLh{)DkM4Idw2&*ttrmGw8jVK}zj^dU z1X*4M^MvDfGM6Kg5sfQI;S|Nh3?xwL_ckk9;w0J@C{W206rH##3JxSq;jB41)YWR- z>KZi|S&u4Mk z)tlx%cg%Y64M9TO7W$)xfN6H+$OQdI#U`?o{SOA0(4K+g>z-PCU2gQ;=Z;l>tTrTN zF4fHREhE2%3Kal+3pOyT+Tmy4q+P%pvL+gwIbb)$Vv6*8?i-su-w?q{6TMg5>9;v@ zys5cO?bUG>T+hl?TVu>f%$ZXSAN`PVrv||&Rg)RaKQJqc(ek-XL8n>f^QNH4+z>Hu zY2h|Bsw}Tsv;}lW3GZh#A%JdrO#dT?H{HOd0Y7{3PPGeci6%4PCzYiw0r6SWvZ(EX z#hS^=UbP^wZdL;ayWFqQt?Ybrzyw|+k=YK?+B}~;-AT4h1R%v3qtcl{BH+~egXDPJ5OUqw~0m+x2thAYNUqj zTMMD}IIlc_iu6UhL||~vC;!+QBVMP7vDpMo5e8yf>irQJRbY6$cPD!->VbI?%?u8Y zVNBU=&`VufdJ%3|4yI@2fb9=j6dGKGcj<@GG~uzu4p5L1QR}1QE7^#v3LcO(YY`(X z+4RrvF69i=P8-pO&nKU%e+)8v(~NFAhuP~b+EZ|javvM(58HQf6+k)8nFJ z^GyYM01e)qAf=)LkiBdBHtlD$TuP?^p!l3}x%)o2kT~1wA@zrp(VWj*%{xbkz9erl z-JG{jyJ0zB_G#KA;?54PvuT51ux}}6$_%_7VC*zNsSh3W)!j2_X}Dg|G{dE3_7=cU zVhVNRd@h9OjZW-REIo%|0C3%4tVkY-JijzItJ9R!p?A&3E@We>mBBit{;;Bz*j{ql zVqt{jqD(s}3E#p|U<;cjRZZ=jUN&1Ze8Cezgq+&Xb|YANH+66Q6x@O-&5ZTLZDV-( z>PJ=F&Fzf)1hYdF4&;d|NmB+ZjSU0!eJdB8l`7!f$v0;NQm7Djz?{Qoe^Zy*0@dX2 z6ckL~`FHi>_$E$G+jy$-=f>Q9SRyxi^ap(TS%k}_x>mY~yKzb7;Fo{Ad2{vi50j^_ zubzKT;{Gg6g$@Fu;NHVyK!R`e$A)L#x~Z4K?1adl6>xZa$al@PU^wgyy=u)>PS0x3 z0hZK#W#AwAPut{SftknvRgSHWDde(O@=%iCt0TX&$6?rR`i-_Bz^MW%h}UzF-^M*- zGqmk_t`MObTz!ZXJ>Bqq6tw&C5}z70MY4{kagXo{QrECd`}oCt5ek&foUs2%F^Vxa zVT)l0gQay}PhDdAW;rD@w6q4M5Ew{X$2licwOE8Q%A)-P@zOQoKI?^KVHvoV1d0_vGG8`^_d+k?gP))&JwXJ zd_aT0m?9YQE06Zv)0wrsF&a^(vyE7}&RDiG67H@Vjg(l+vr4<@%R4JK%a*SkabF5*X46^-6byRaw8 znHmuhBBvikR+!@AogDq~1Z5$BCWBa(`6vp{o6T55i5eXfSEjVDLp#YU=XkZ7<|Ab} z$0KG`4pn^tQYdGVQOpGQfJFEq51tuwRtF>U^e+Et4j2B_P;#cCV+;pNqQzCSP;E~s zFvl1Yo<8f$A;nI4l$oyRO72CjapBoBVoew|>A9ZoNS#j48{CO2?-$NJD>g$%p8m~t z5wm>=C#G5LA9CH_Ph?@d^Qf#Ux^?xo?ye6`c6B_zp4ic8HV=#H%?+wEGt*7nlS{61 zQ8^R!HQEs^uP;|s;Ox2JyZtsMKtVM#BO5Os1(}}B1$%CfP%|}s;wU!#$|W{jE(k&R z&ZzGjnh8)^v+A~L?DJ6>iaDalq^BcGHPOD>jXGy_dVPyeIwguJ^zgz*)^PZ8JW*W! z)25SND>RlwVR|oi{B}!Wy5NmGxZu{U z@`2n2C`89x4`np>AE~--m3G}tQ@OGan0HKR#R*BLNByzx=8fH1E35XD_3Ro-c{{pA zh*Wd3d`-_O%Eo1-@9jZzF~tUG6SiB`JZ5`uTpSQClf>#8IDFaer;gpgjCa#zQ>Iv= zWC~qJn2_1ZDPR*7YU2e0MrCv5|CTUIm$bbDF^pn`Z(aK|r4&Swd4+H-1OahMjh>HzF)FMo54r^d14^5Mv2iK~q)(?}Su~l_ z`}!Bk!<|`sdZC&d3>MPHejs&TGcLW1Pl-?eL+FB9feL&13`_skS4z zROVBP!U)(Y$e$>skjjFZ$P|{1lIw4!C%^X--h8^V*MK@}L0{=*rax4S$ei}Xp5SNg zPdZ=Sq*JpruOIIt8Rbn6c|Q4EY;gQ|2HEPAkd;Y!mxaJv`NWbtBSGmW8 zAuWM!tNNrnK1b38nw2GacBN@WRaIdVnitpQQXxV1$Jw_$MeN%=|!Gzan+0>&@Rfd>& zSKI1Ucmi(X06KwZ#-(rzXxrKvX>SJp*y}JT?{@WYX$`|6s?!GjV0M_!ZH`(N2n?kK zoYB~qZ1M;+NW&ek=KVFg<#(vsi~s-tK38v>3fp65O>Zel_@ zqwR|Q4eVxhApX+TFViSJYXFWppvk53($jAyPi6UoKQa?B@g#n#ZqidjR*uK?cWt+8 z>E)e%aeikK|MyGR_TNnY-p(ctDWyG)?)_v(8O-bYWO9m$8}>cRl%HC~3N`juzj`|r zBIeC?wv!`0(j9@#?Y8)Kcu1!AFi^75Wbh2BE-$sO?q7Uuey2Lc*$yClW9a$ka zh(HeV59jDKfcIaziUH*SXYB&ASIhOjVdVLtU4Ni#j1BFxTV~I**SRP9vSO*Nco>c3 z%j)-*z+4pT(%eQURROTTNCbh|N84An6Mu`-480L@EM}v*L_ixD)~2)d;quPW;61g2 zc$UJ~es$M463%7Fu8AoO=7aOCz*(angc4Vc_q-%_^Aa}@e(3CosQzp%VN*U48MGNL zPngV8eU0uUdcQ0v(k-pU?drx?i0Jsh+R4+!^{Al%}juWKQO$ zDJ&Obp*z{Xci}k_5Uj*x&gv3!mU)A^h+v`Cv*B|}U5Clr$B)qEeW`rw?UzsRU($+1 zA*JsHIb4{{1{Jq?8*l!}LL41>=^xW|CKyW;z;#ET@xY03KR7U`4pv6mxy2DG;J|(5 z2eb4EGrRY7VEUwSDw9xixwqn#GpAei6+@%cT8%Z`oK=>x**|0m&!7F)A%evRsCM?f z!55H&@>{ocBegR=$+De$HyZpG-@agm26iA(WH{%hxHyMw~8e3Li$Hgbc*!Uk^`gpwlk^grW|L5^7n6cK# zv)2?IzVwFi!M}6E(sY`7B8D-3m0L*+Jh^SL1m+-|c*ptbmJ4CdyWA)ve83O3*1K|O zJO!#!3YB4GB6B zEHK-JiV2<-`YV9q>OYJsW4mnUa*yXQn*@GjAy;Ypuyy!gXE@=#+lyb1L-OWO+)=K&xJl^)F57 zl})mFXHz>JxrUdV;gtFry+GPl)aHV>rx*hS;&N2Y&gn2fK%eNjo!U4wQnWAA%a?R& zsQcxh)MwkQgwgNS@nA-e-T&6vPm{@G`Se*Qt(RH7nC-9oqAd^bIBb=~aztmonkynp zxA$GOZkBkzl~Op#UR*7zRcjrtP*&#G;-41DY!{YqUDGq5+03x1E(`-GtKQt_vNi`ifClSc18=InYE&ZCcA7PVynr{r7%i+;=3-syA^5H(Z!@WB_4`dWZ?QI3 zD2v(LU+p(38%3M?s^BIPM;^RR``XFr#pHjRJUO$FBwf5iwMTd7MkNN9Q0oO4U@Dc? zIetCVWnYAs!b0k;|IRNJqWnXxavleh*gL)6(|>#P@X-UVoU_=Rw=T=WKvT@aU1uRD z5nW|3@TShw2#?C0Vjo_Rb<7-2bHWL!EW+$eg02Q*Q=hTUEqLQQs{DFTX_|^wI&U#n zoVG^!FK990SM6{rj;FJtp523QwPKl`_@ zA3pq#vyx-`^w+09*h&uv-H9txZRi-XZVz=Gk_Q?elv_V(@!dE?Kr?{3&urhUS?0mn z+1ILjy{?8mYS@Hv5Uofq{&JbET+h4%RGH%xZ11O=>a}~6;9P=P6~2?(q;@eyK`01)!5@6#Za!(VM&*39Q(;aIJD zgvd7)=JZfJ+`I?yKD71SvAZC>u+yaeRqO^?Hl*>Ir^uqUqD5Y6s;^f~rz!OZxKNuw z7(gf@+blzF*anM6Bv9j&%%x6ZHf7*HRc#@jS-{QB@JUWpb5<9aQY^w9$TiH&I7fX- z{$|kv>S^x2u*s}oqip3D7Zy_m8aFmk#p1eFDiZV^}xo!Ku)ZAsA$6K;gHdoc7- zUWqW!rz+ogVA#hEw21Jt&R=yF4$({$P#OYRFwKC0nq2uy)J376g$0c;g%x zS?)QBfYAe&h^gx;Y~JLcU_;Hd0AbU%m{r8ZHEmncgKZpSR^GNn#3>UgDU<=RS7oAt z9MFx2B{+u6OhzDf*4B!V{;bm3+m{y?@7!_M;2CdUTs(T`F#`PoAUVhm(i108{OmNp zBfexxOlclzjeZ7>dzuy)^do1MMje>Hzt&1bDK>A(LG%9v#S*erSp>69GV5??dDcvk4@^CrCDTngkGss)Fc29g&XtCc1tj~Kd5WRDpabHc#Tv= zRlQIizp`QE+*Ci-gPy^+@!$fB^faq4Q#8_(Q9?EeJBV2pRCLbvc&dod;k4C3#pQ4n z6VeH7oJ?i3C(V%>f?SQl<>b44CniqDL3yy^x<8V)nP!2#pX*_{Za&h{s1UEH;P3<6hl(9rN)`P6`mxakOw6BphWv%X&=A){LX9NgjD$bCcq&_h}m-E8Ka`s zEGvHL8)N2YA!*k>B3au7A_UO_)2S(u9bS(cgvE!VDG7{Sz~{DfIbMQMj}zu{iD(j!8xKGfB)<@4E^Fn<)o-(mGjRh!lPt~WNY z*)=iO?3uL~Kh>(ZshVN*JzQ~FIzU>_5%7B4<3E}&IRXhYQSUQ zZ&j_`)bH)f2ao>tZu0y#L5?V{+Vr>2nplR~2cn!%BQ>HR*Y7wcLFi^O>GfD`R-2Q# zchq3>zWqrAe17LU+e0bKrHqbJdG>36PXabKE?W_w4Yh))>Vy*NW|vcqglM#9T`=fz z#6skkNNAM*U2hkj6u9pM*kn4OA(ref*CdVkYE6iLyYPDid$V2`NN#3&v>|^;3j^~0 z!S2V#qcIW&)lR<_bQo6U@E7@dqc0Z2USGkHDy?hE$FQ?ViJQL3*yEf&8f8g9(Kc?Hr9*dyb)tlKy*W`*f8K&yD}soOkUHagk6>tW&=HQ=)iK=bU7zF zHJJET%P&m3YX~+NUq(Uz1&nlXp9>rR^uL4!O2;&Imn9KIZZNv4Twu1CgCR&vPJ<0> zOVGEE09i1mUTNS)ms)osg|;qRZDQ@c_hp{`A>2K4HGrjDC?pM{JT8bp^CSrp5zx^}3&p5?t&Rd$cDH1A!b*orWo$q+c9q2CT3wOrD*RNl#> zY-=nck#67Jc;YTqNnXkO#1)7*mvizhtFJ7lg28M0wNlp4QXaf`3>nQd;wzMYxX0;r zDGG&I)YKJ+VP!uy<&xU{+lwbJ-!aDRqPs20N@=Q=i=<#N7<1I&iOVJ9s|HD=(1(hu z&C!^*hQ53iZpUMp=o@lNes85rm;UwV>I22kog845vfes9x*OaGprL&bE=3_8xHHP4tanLav}04EXF%g^mEQZ*Q6gKz#{~1+cIEax z#*gWW71lKaH)$HPU-xt@;YhD}6Wn7Fj?HMVo~OUKVZ8-of)I)CD(=&ezx$4XyzTt{ zG}ZQFQx7iCfNA)9J7e9}`)bjcC6hDVX%9}vCVFUIET^98c7dj3wE{-_)W#q{eMHIot^592-3^10&FkEmyyyOX#j+9WI;Y%<&ZfL+wxC!CTGcLv zXsUYX)9Q4lNwM|tsfd^!i^>#Ss9S2ytgT0(EMp+@$|}V4Q9|ALb2+SEr2XRx$n?d2 zuIBKw7x?kZch*t(sqSY@3MW#0sj@6PF+3wUx<&ON!`hpmpjF*Qr%ErbbU@Ufkm_V^ zyE$P*Ep{Hl6b6744B7xHOS!x@lyo9JZlBIS|ZT%NRY+N_F~pWu2kMds+XO;BsndmZ{RkW9hp!X z6=PWTaA{W4o?oU2YdCr^&VIj)tw=joETFXg+d*1(Rkqy90DMeYR5oew(H@S3Yhjt(MB@`dDUEQJ! z_37PV_X=q^)e31zYGQLddz`ITrD-^aQ~DL4$ll&TjXBQ#!NFGkPnxnE?`w91I93e)azVUozbAOm~QCkaVx0`n;|sd zO@Wsyiub^;wR)LYvLsWfRLHxZ2J6j?z04uYkYGFo(JJq~^lmMF?3wrDEg>v!yM?5( z)wv|5)aVYejiqn$*?+G;f>-J&)c90U)sRKf+8NT7CsY4ld*2!(S$dvzHrY7#I5-YC zz7QvrC&t~quCBT4-8NgEThDg9voo35_1IZ2_*B)Y?&GdHr}mtx?rF<1`C*WM7!h(2 zCbE!)@*_f)h=djSMmtmBCoJc)PY zPwVNaK6NhN`M&q^T<(G&wqGLhI|sL6BEd%ASes7-)T9tXf2?^=m+ zUg(~w_;YSPtBUX_Qcw2n*|Xfylm_*6!N&zCHkdY^j4EH0ZXTNJqu9G53jggq1k~bNXtisC^}-* zCN8&M+8Ug$Ii1^J`~n9`VNKIT%kZ-P&H4>`KKOFVX&fp6-y(i!11Y>VEGa?%8t0a{ zkTKnSM1Jzf-Rqz7?Q^wmYLjh%1p;}OWtne`RXHQ5(VtQ<=A4ubJ1pKTzfO_VWc$YH zLYLK0EcH=E2PzkqE_zpQ+|mF9ADylUDs1PnrXw5~_O2X)*0F@%oECv;d=|dk`vyAQ zv5YIQA9_K}YO$n?mhQU^I+4WQ$`aOBK^_x1^>%tbAK}%L7dnEOwc!>DGeuHhKo=)U zjzBNa-h4i#YSo9cRV>K?K-sJcUPD>EvML*FtB~?#P*L9DIw99n9rR8UCaRsU(*bru zu?1J>G9sQW;ret)_rY)ScKCf|$q4#TKvAU~Cbzwq=40pL7+C1^j#=gkv#n)?*YC-kxA^Y=m&F5@E+Y)`y_L z!pfNXC>fv{Xdo`T5!8KUViS2E=l{exX33xr}G1 zld&WmO?mC~?|SY^?&_&Wg}+8$UcLVKxAaigGv?;)Z2&! ztc^hCCa*Aw!;7Gsv~d{VIILy3b`te&k_xs$H`Q+13e1#^I7T{1305gAHDt}YJzx3 ztC2INbgzgHO08#BO9ZcJCl%LbqA&)(A#OeMnAzM*lBSO^je@j5d;97KHMh*=aACllr_Hx0iBo5J$>zE z9>a^99T-|@fkH-Kb4CX?#0<)2dE#_vLepBZr5*&@>{->G)%|E9oii}&T(G0WX63wu3UCBA zOeIb~pn`sIggB!vt!MHvY7oJzBgfg+N|GN?Xf|a0>0Ro&Q^oQxV*Yvx$rMxD=+tT8 zxUx?$D~W(AwX5x>Rpla1g-On8Y6ZmOZn8#0pWaT@^^Se%N%Ty5uB{Syqm!~&E3X{w z6CvbC&QquIE!hDNyky7w*BpnQw22vUmGvtboEph*v1yQ)7#c96l9h7Vo^eyIwdcj@ zcxt@WyWG?Zrvm|{5sqV6J-|qU$QGF#v2;Gk=d#baSea(6%4ENAI(Z2ujd`<}MOnz+ z1Kg(!rI=ud*HVvZ*gfvW(^&FIn+|Ump<%Y@X#qh!ie!P^+dJ-^)N<+|>Sr$dD><1%P-l$LN!iiV=-T-uu?QA)`dh^k<`j@d9 zkWIX=sE-`L7|RD~cGuf{{A?>9w)*H@&81W96DN+ZI!jxn70HC`-eIOdB)8T-4CJ#x zn9DOFM>;kv$~CJ;CCLWSu_L+$GXt=W9EG%uK}NAsYKv>g6WRgi*j=k6U;#IvrWK@b z8Tf*LWpaymhwsR3#i{G|C@YNw-E)FY3rFA@f{;~nB)*Yo=NW%M+UVa33jv+hle9~>ei}qZG&AFd|A=9uw+NYT%EK+aH30OQC>6%kQ!Es zzs95Xqui*h-mq5Et+0`#57|P+3tJK}?+bJ36d;Y1p3;Ip?n)44c7$F{T#&wY=y=kQ zmx{}Vr>7G;ZN!k11Qj(GX14u+n26FnNc9qM@696vkY1fMgWgqb8o*`O>%r=t$LK~0 z)1{H+Ae2+6kFwnnBTsE5#op2Al@ssFCU4!AZLiQIP6!YB(~GK9tL+WtVQ8+}?=4ht zmZo#zWBaRilv~kTKk95J0xV8Eg|#P#RX3sjO@fLpUw4axXcSQy`5AdP$?3j8=p#D! zxV8KPOh;XoJV})pDR%@no<^Kt-kZ=;yh*7TFG<2RddWNPHTZM$q5FKaZW$MiM2Agx zxJ69_L%h3M-|z(riZno>7*t4Bb#nlSi(b&C?yQP<PQ9K)8tOdN<3f zP;$qVIPp=JuyjMKeej(9DQLyAkr`%P)kxdW(kp0$;06$jRaT~7X`%`qMw_Oz_ki2| zj>tB}xws4A7}h}REbhb%hgS%TE}l@`bHEWdt$bbRm=s%&jROkFKtT@A4K@>G7c7VG zio&yc_9@%?3t#^o33F8Ke&CLa6p03UBEJ!_3pgq@_LUD`x!F%S5^1lM@q=T4 z^?(T@U?18OiIHA-5~hiw@}=@$1);>C0xT3tF7oL#h@WIjH6!I0;;Qa2aU0n&NK_% zjUZ)$p#6YO<-Z19YMq1xf3V&XTogfo)%MZx;G{cK?8U2u(cRDioot#y_V)_eIh)GP z1HX4xR!Oo)cMX-Nuke$uJ%54<6wQV!s#ZsyX#(d_lA2=oC#(5_OB$-wdiEW+V$W&x zE^egZulGteoGk)$uq3lk2-M>=+MBDwL`Rhw`}S(odV5&0v~aVDjNxVQV~{Wy!a}Rc z9n<kWkkbrGz`R1&(0=%yIz^K5Z!nO{ZP( zeSt-o_MX!SC#o2uf~!qruZr%5V+Obh)uc?rwqj7?ja;OJ`qp3CZ{$+vu;z=I60=Vn z1qBtbOosy8jP=gp8qA`egwPOhOj`!Tx ztt<-hR$GthI0a!hx^>t`cP{p2-_!=anO=hy;D9tj=?1X?9Ts4qWBh@I?M&sk!>m}vDkL{C#VN#Fn$|QV&>J6suiUIELxhYd$mYO|_=lvB`$CJwEqCD*KVnRI+gcy-scp+N^c?hW7O}I_ z#H#4DoT?{r$RfEz@C0#bEY=&y-jFVGtiXamm0ttI7c04UO{>u?v(+*9cuWp+3R|E;mDiAwT__S1vsF+(-Q?PTh#btbSN-6|vG3`-R~*cTKBo(?|>Pp0`^n z41`ClaT^|7&wIWK6)K>iNCJ#1+g!hR<>tv>p;G-C-(OE>L$;(1_Sw`&3+rsGJewiV zW`NlStg{3aAQD=;0s%ehigH^AuCct;58<&|3git=m$T0MnBCnK{g^Y;RppBN?xxZ9 zwh18|xiS%^HUcSK1l#SnNG7j_>R=Gv?skw!?p5Q6r4ckYi5DksXxAj**zor^#kw6< z2{YDi+BTppdFR0dbaK*AWotk82T9)Qp{;p5vI}jFBKUIG^`HQ+?i1|3SOuA%X|DG| zzWkFcwT_^soBV2>mJxH=BgC+83EEp>5y#wrr47}%5ED4 zE6f7r#6s_p^ZA{Zdmi#$a57UOnnAfzFG;@2uEB#v50A%qQbdBKbZ`&)jP-#NJjrH3 zlaaWV%WeyKI9arq#Xy znut{8fqK@lcHO(M+S9f3{MmDlZ7F;%<>8qVd9Wf?cNW@FVn;r5dxipU{*3}{MC+s5k&(fveT$>PYon}eV0T0hrN9-$1Z z>!3~vxuYhhqQY_fsjim#UE}?N!lUz8W70bTTl6(Hr9DMn=27UmyYz?sb5QYhms+HG z-qgU(>ejTS1!orjr8W)}JVZ?;R|(ER?}pj=F#67&S068e^TCkP0cseZyiKkkk4k*kc)R3!34_4tCA&w7elezO7x{8!%V! z*geX@lY<;=`ZV8_D_$m$3)5+3saPV}7WrqUfDrwb0H=jyUp z&1RPBE+vZE14)2j>=`-U4AgO(*<8 zK|N#nP8IDB9Pw2s(WZ{+-IN(FV7(?`mX)rcw*>F=f>jbtb&h%>fWt%xR4nY88}D9~ zSIZbLny$ty4}x5*;tvwmRKaR&Tl;yMs6WiUeY5Hkkzd8v^Mpp{2u4}sM!p_t2(MLh zN1!OseO{}VaMsu>d)4_9u+dPrh#YPUOQjzi=BnSG!apo*L8WvK+O0ypTP)ZbgTpLO z?`SZ!v0MJ)hx|3PP!}hIS6zuO<((xmt2z4;-hk*`x$)!pcg2XoePUDPdKa&x0-c8A zl>A%w%(m5Q&`I`w{gJhTo;Z8{b*+M{7x;LWC8Rtw zA4qc%*HSA`n!qW{S93YZ15Gb9;|s1OdekUNyhtBKK-`>JE4Nd)$o%Wj*`?1;(34QL zL3zT1-Xo{4?~|cLO;Yf&LF*w#53NBmxM(Z{P$}r9n&;}?1TYchrB4qYQ4S>qBt7=k zwakeH?iuc4#@3!mJ!>uQc1!hSrhGa?f1l<>O(peHJKPBkK()Zr%ETD&hj#jE!QAbz zRKZ2IPc%@_pnk8(7m8_WCE98Oy+(zHC4r!gpcMph{ZQ)m%P5x?W`=-ft*bASXTqi( zJRw2#lgV-}kbrFk30w+RS`G0;5_MC8;&slapuQu@-YD|@z~phuA3h2#pJ)?lL01Ol zwvAVWHDL{*(jlby0MFlBp$MQILXemUvN8aQRP{7>a9=56LEX%tpnh+`0TYAYy5%Xg`3(O~+VyXzMyK~^h zEn}4erzn3lN`}@nYTzXuNt~-B?nFiNIe){oNAhhMO944k?1B98(t^Wvosy{p&Nc%{0P zRU;WY=kpT^z>(0!a-V!8aOqq?Oakkr+a(zA!GTY8(|OQq^e}F+;{zTSi-px|g3YQQ zh$+7ssX>z=|3p65zg8eIAKQM0y9P93_bT+6E)cfWCZt_~VY#xhyxjBHjRE=|%Bzm7 z%L#Kr#fKV;T>tc0nE5cxT0ECYJ_$3CnVSBU(0&*wBMa-{Om^>Yt#p3dI!kNmu=zbs z;M3!>?pEZNMQvq#SjK5;G-VNhxR)|#a>X47*?4vk3Li4rKH-`KybyiUV89qW;*iOjqNdhSj3 z0EHqh$-mxe(hAV#?k;n{fk-Z)L*ph84rfkr?$VM&Nd|rxfOYum8qYtCB?DlK56oOGf{pEc<&h{-=!QyRz&*$oT2+ z&a#b%v+T1nw!SCJeoe*;ugkK3BjabjH_I-)KFj{KjGuTzmc8**mW^fnZyEpKjal}? z-d|#f0wa%dzO7&#?d?Ecm86Q{dF1d{h=)T$1-lcQ_fq) ztsj=-%6RHWvg{wpc+X$TvVSS#id^!)lhM2@%l^BJ&z{b*ANWx@CmH`m#!tUH%YN`L z%l(k?miNg0kn!+Fmi=uR{Y|-68P~V6?Du5+{3BWR(0j9NB;z+_{6s&?-npG+|4PP< zL6-ez8J|0oWq%-J|7@0h|G6ytk23zo`7HZiGCuxjmi>Df?PFQ?Z)IG4Jj?!}j4wPP z=k#Qj{Y@Dco|1bg<1V??3jv_bj>jA=t`Y9&zY2~DBeLI1j0NMf?jouQ2|f%LGgcGvgzM|IN&d`s&k0u zWFX*UwY+fa#^v7TqCJ*nQE4?>17|q1u@&-J?-9SWBS#uuJ5D%?rN$OV;V!xR?W7L5 z_>%Nw)iFW?$x4a*DR38SO$R)kQ9jF&#^bxmal11dKFd~~MjZqjl+__bDx)IzNSVD7 zf2R-6PmAh!4cNF`n~^eFo;~-AfDX5SbqHP9oTfIV zIS{FvRMm$;Qu5Dz6M~2w(UC%)rfx*8c05o}(_p(+6Nnv&9R~EU1v@E81AK;1Lf zt4{62G8iGIhcLFuX{#UiHI&y`oc!r}HZ5wyd zbgq$zNK&6SNdY487K_;;p_C;$@Jf9){7|duIDc_?RlOzUwkf1h`|{Q=N%4W$UKJrW z*EJY;CGAj9H!`GnSO*pwRF_18Voap9uWpp3o;_LVr(Kr=%yP zn48_X0zBt02jao(xC?T#H3~0-d~*772fY-K7|?(~Z^~vTRvN|3nwiLn-fG=gLRcuM zNn@9?8h|Fz6tZ#k&YeGdHsKjJ#h#IRXp1sx%cTiXAr@(|86Z07mDlodTENxHf#K!R zEs(_pwWx9o*!o`88 z8{hVmcBYw_L>``jNC%4BPDp&_L?Zhz*l6`kIcUS)^@h=&ZB{xL=EX2sNaR1Igie>s zN#$v>5xSBbiDG+cvr9>ybdKq7RU#^OL=3rFBVI8CB%U@5A}CVo2^D1IZ1n} zvXB+W#;mx_-WV}pP7CvY?uXxg_ft=uO}+{*ZY_`6s&Y!D8tft>ClHIXA4`5Pg@9bToBDG^H5P^os0a8ApO_7h3AJZHj=JH#u}HRDMiCPikZiv z9BXgvgs5P%YWLZqQqat7RxJCb3l)rG1Isw5{y8?O9<>D+s@xW#N6~ln&}7j^JC#b0 z$G&cvdPQ=g6aBuYJvLXTxeH5c(x5|bl-R~&&d|Qc`Wf^Ruy#_gh5LDUYLNX2nDSvK z?K00-ee@b)kKKYz_Ojfi`%Gx0f+amb8g8M5ZVMJzU9;F)N)I*g$=Me368$hWA(WK& zl~s8tFP@cvj;+R-sEv|tZ;nre$+uZ~(cTZh{J^~Re^}J8)*yyOS0TnAR%2~o|B3^v z#^r3`B_y45n)RF^-dSFoR8E9CR)#xMHRg1GX7Fm-&f$&fZQ{dKU2OvqgP2zThUURh zWA2yQ4L~kr_tOLld#3eNPE12Zfv2+)Ckf3{eFUZ*WX1Hd33jKgPmu+@DUC0E7&jrP zvdGld=%WGb0)~yYa~ja_&UmISaGZu_Y*{j@F6X&vuWNW#Oa_m{DymVmWGN??_pHUc zE)Y1UoiTc2ra=XPM4sTvlO{}d6=djCHiiaZJSib&#!uc+1AP_C9U=U|W=fL6+<9Ru{d5kv@B*Ybp*K6K!2vWJR(*>7;-tvo_Ff z?bCO!4eZcWWemnP#PWGW00ecJK(C1ytf2dYGBr4Hwl2FjTuI-oDW*KCroEte#K}J# zQJOxaEfXtB8EOTKi_U!qLFx;2OkN!F8)x{)OA$nr5GV12`xbM!uYgP z%7i%%Z-_~yS#a4}kstdo-hGEX=++{0<-iI876%3m8Ph&!Yu+dMhJMf@k#|9Eh;s{t{Yu`Yv8@!VJymcmpx!f)br@+nV0kX)C;dr~fthfFDCpQHE z4F#L{5BBQea~)as|fG zb&LqL!Oc|_RpAWY0Hgp`GISjtB^aZN_=@)&+Xk5p6Iw5!Bm%bOv4v?m4IiO`j$%02 z`GH3hWINfc;KmoYIfNl|SuTS?nK`b6Rk>_~3a|#Is<}zWDaC*VtgqG&h{#a51FIl( zY}NdV0`nei5GLV%Aix}!R!y9n|x$M1V z>mcFSoTHT&+(`1Jz11BHEka5OM}cs|2|$^?A5C2`x{M&dL3#PqdWj> z7wS>P;+SoHd{fr;v|^98P!m*U^FQtwP6q&Zw9Dd&qjW$fLvWFH8IfWFoqwm?1qr1`A zTABf+?s1oSrYCIbNOKw0M>Aq%&~us70gCZ26X*S4^}Iy1+0a%vUvgDbSYUfpu!gA9 z$%I{w*T6Jb>Jl0D-IU(f(p->Y)%iqMiiA6$;CyOLTR*^QPP!Z_b#zfwW>&6{ex?!> zDL2DIB;H(nJ@h#fen=~u!KJ#j3H2Uvf$8 z-+fBU=?tDDM3G{4DaKXj3S^p6`^Z2ReC*8Q2^A-{2OYQn+~u2nE4Ns&I)zCO=d^ZK z6%6_5!Ex`U>C1{q)7jnYwZtn;z<}GUEfKkM+@s?GG;3+l*eV7n@4Yl%PG1ISB2NM# z?0y;s4sFAKG&yBlqlchW+jksI6)XsowSX!xZC7fKmJr7-oT(5BH#3pH4$eP%R*!!E z?AfRKhWTS@cU3t~-SmX?L+8#9Bo}062g|#o0tJMW!P*`VWa^}4L;7J z0~Dm@(6ebFkJwTeqcrcyR^cssQ)`W>BR!d3xEorAavoHZ@K>w>*nQeGxy6AsV(7F# zniUitTLu)V%PpJ{pR=Z6>ez>><49So7MyD@vux>3qudg(6k#E!{BI@bmw5#yDpmaF zrL4*NuHhhgIVas)54Ea5{F|<3FBq<7T#h;uIkj6CjQF~4sulfN#Mt_{%?w^+v zjZOT=U=(-1L_ynoa&d#ZLE!g_WiaN-%{W#eltG`RrEf){wn8pR&iX|Zfq*}=ODCeo zNmixSV3%rpRvWOY;WFdeQuRnZbq3EOErenOCZh>i*?Oqe$2s0oi`^ss80sZ`6x^xa zZ%g0|ixn2B7QqgW&~x?StC6QDpql=UhnU+?iTM>GpA~rA3n2Ymp-Y7JB8#@MaV?e7^*Z{v=uT8UD>xg#P_Nnxm4bv+_`-* zh~FC?#uYC%<|zsRl1=IT(5~T2=bqeoStpuP$6Q?FJpdor39W*Vf4x2*-2#CsG!Jy#T*AA1SQ7a_!Pqr)J=^`!7YEY}e~g>QJUhKi6v{ z6-pb`Y|WTT8#N5HgGU(=_C{J1Xb1sU0Y3)r=r?uk&nzPeCMU+NrG=G-Ka$05+Z*lS zF3U~G$^E)j?$ypbWNDNg9{|z!hkM4&Ile zRY6?{@uY*p61<`O=^cpT&Z?clP=g`PoiOWK-#N{ESnMxvnK7KNR2zo>^-`&=Nw#hl zuv;z%D<>IjJ08LoT~l!^<{a{|{g2%@AdmuGl&~p2&EpI=%^(O0iiMg>y5U%iP^}zd z@``^1B8lB9WOX|K*9%)m?%%|b-rz4JX3QUwXI$b&M}R%yxD5nOJH=&(s*|BwKE?ET z+SZAZ(2=QJW5PVKZ8lnv{}NDEXFey&RY!M*P-sz--8I3;tCkNoESxKk{*0O#EfL-g~Snsi~a~JN~n;PJ^~m z9!D}PpS+ewijxzHNu0GR)M0r4*iSl>3?QkE1ysTVG46x^)UGSv`#<>zf|^e%JOArL z>82??BDx2&I}h&3*iDv$XDDCJ@mS9M>v_%72h}qb(4*|%=-VU>Ki(jYILlEnWmb2|Cd+h9!-^zP`%NaF}XzRT3NA{@m?WJvBd+gykN z@rBV0C#EQhI~5f3tD&UTA>2ov#wgIu>T?pvKWU`X%8lo>^t^APx608X)_C+~#Zv@+ zbWTEZ67r-iMw+UM)MEQ!M#P15Wg~AnZ^FODqVfV_k@2oI9BMv0Sd4Rzo2n!fLl09O z$W{1gmO*P_ntlr8WZ$?%2ey@msBe}KZe#$Kd&pSG_f*K*iF;5;a24_Sm+yqc#t z@&DO*80|ep+O#mHk3p=R9W zm&%1^3Rlgl&6RizL3v!|249M;qTfYo%g#s;|7b*S#y{}PYd%P!U1D?Gl}+Wt2)*cB zoak=NTo1)^*c>Rz(nF}*bl_J)t49#CJ%dA|Zeu&G8d!=R9Ut|CK4SFJpw_k#ID<6= z-i`D#{ay|lx`?bVCyw6J2K2K81q7XEWa%PcsGt4}zs-D@434`x2g{hNu)2#2WpSeC zFxOOMfL?iel2vDY|Sb4R!dTxuxL2hn?D=NEh(-ZvJgq~tDAXxb^> zh7R-`GLmfVvm)(>m?R>d;q6mr=0i%K(;W^X6Ts()h`mvB3zPNn_S?Rd@nd{<@Wsl!~T(kFn?dXGTs zTti!7s)%4J#EQPoGDWiM6mf@-GuE5Ev}$4MqtdZ~^LIDExq5Lr&lOuoY7%91mzaC~ z$#y1n-u3e}?U`UTx41lyp$A^0|Eadmoz>b;W`ROl&c1aWmM7d{Qi6K_cTOpc52Mcf zrIa`FTw>Li4(Ec+>!UeE6!T1L6WVlF4Z$%j6x6yh8xc)>u|K`ekgT1GF$(h#d7bQ0 z?|Wnqi1LcW1CU>{!rnuPndD)O;&`pI+dP-(1wSf69&g*6-ToAin_-D!8Iod`l{H*t zQo4L}PYpjCD?H1#ZA~}b(M`<$tNueChwMF(h8t=xc!R#N&fo?-_h9l3+9`xdtjVLp zojr}eRk^XTaPwCO>A8Aopm)2wPW>}j0xsv#<}Z{bJH@h+R*6iJEHVZWx~%$8awxvp zU2>+~E9v^hlOi<7YyDxL!sWGgf*Yzn^ru7Sj!2qjnV@1uM&z3f>O2JM9X?&sWg;tt zeExru>;T8nhon=L?H7KscxTGLFHVA-QQ)7j`a?8)PFX&l|4=itWLojgOL(|13wSL@ z1o)m7bT0JcVB#SyVoQ=p**4^Q4w!6AIg?(0@rjO&4ru$+#riCU3b%R(AHcv&Nio?a zL%fclU1Ple4$WImII%sv%lkw7(==#Q!nRuyl4nlpXzRIcR<0&tRO!bc{HT6*rj$FT zMFRhvJarPPM|s&CrhmiGUX+Sb0!&UcUTEbTTc<5O%OrfC+WuL!Z>WOtwFY5EC8T3A+k>_gKEAb75v2bTp(c4~rKy?g&udD7RSZBqxQ^ns26 zdklz+$vw*rfu5pToaCKHkEBegDE>oYWki)dIPl9}8FYTFXo18TnbFtYWK@tlsezaT zdT!>%IUdG{g8CIMx@|-$tRcgXa#xdv;$oXTeH|eZ6cGhW!RWZCqVQ0zi7ZptC>#%j zW@3YlQSfC8#Mn|~e-Y2-py$JvvEECE-!*s@F&-}dDRXV=A8?QK8!w*>#-K5)C{A>x zDvA*QJ*uJ+av@K9W3@<0S`o3OdJv<6GN3-$e`n7nmZyJxP)0`_t>M$k7RlChoXgfe zqD&UfKc!rQK=S4s#mulDE&=O@qnt})+I=zA!)>a^Q)iUSj;9hPglv;pKzytWl+AyT z!2OsZpO%Zu$^t9P(v7(Mbe$;}btfgLM`^@K9XWDV4_zs~xSibT`@zm1U)swt5uq%X z?LiehgnallOuV(Vcs*5G=eQuYNt*}PjKl2_Uyo4Jte&I0fqdzU>s-xBLSJQc!9jVM zIEhcNDIGgDam?#`gC$qy8v@!=it7~%^6viH{3l*b>4HgC1+x#6u2D0T`-cWpJ3WnUF@jCui5Hy4o-Tsab6k~P&M}c% zR@+&C=sXHGz}oSPd6zZ!XlrA0Us-iJ=#kqHe`y6`_SEXA$-~P|n<}RVginpE;U^VnFGJZeqwax@Sck zv&;&Kxw2mqBJ5u@sb@q1AKwR z?V~tQH}+N?u^WFO#NCO%3u7Vrs-^R4igue=O}e~Zd-;v4 z7k?MU(o1)sZt@Wty_0&^#p0_s@-OH3Iq3Mw;>q&HlAGuN7(v7(PHJE@`h7rU;w?9F zV)79ft(SO5%hF48&}RG*8*MlCB8rRb7pL9#e_!6o(Y&8AEs()SqZhQ&cu9B<673kZ zQ$j4rOLOwFO8s-}m0v zPY*RRU%-FqTUz;%ombcGJkAf+UN6vvXWn-g;8|t_bl3iNaP!?nJk|JpH~Yz(Cpdoc z)FV~5xAEG2{p2fP{_u)eXS}9$v-jHDywJ032YSE%HtO91p0w#Pf|}a>9`<~9^4@#C zHZM*DNxr|PZ&JKofgrP9esj=w%gpy#<~Qiwr(4*JO;6-C zyPf9Mv+c$I^%>jNx3J&i_4$!Uk=wW8{_Z<+0(yTyUib8^y8-qPef!=pBJaOHksQS# zuYdT>?nA#SJ`cAsOZx1%hGuT%m45E)#(i(cxe30<3Lg7zTM2yS53_=J^?G+^K)MeL zH_cCb!d=_%IXhcd|1_|zd{S?^1%RS;pB`5;R(`tg59@h?PJYhve&lV>D_`&HetPdW zd3)cr->-uAlHc!sKNO^)VK_I2IMxV$fYn1nfGJ2r{KNo*`B#f_*VVxOx15qdfJuUp zfZ5rb*cw>qIl0)_7&uyZn&>%O8#^*OI~rKnG8!2enVZlXuo<#*m>6>zFmW=QFfnuM zG5ss-dUmG&-{4{}aCEeDQ&m9(gASa{FpmA#{-<|whX?!d^XUf|*uUUlVA(xB(Z+yO zVhq6hnXxM_z{(Y{b}W0HIdK^?Q8{sbew_i(uKg;n$i6za?X+xd!_8d7Mr9<^J&6Jt zZcCaDS1)TA(!;Mc)>}8g6b(1_*H_15MF`Rb|BdQr!7&iRB7tA4_pbS7PG!=Mzuf!q zJ<0aEiJBmipUcdho^-$4_5tO3UBABM?7Tj=^?hD_?|D%s&B))*>>Y+t?Fhd1jw4UV z-_P`eLi_yWzP`OaZ#Zw8yy?F8Zv?5o<7Rvne7~xo-`4!dzCS~X8g)4&^(K7x%mIg= zvsi?FYpqkJ8xN!6eH&Q!3yLdkCOtfvrjk3if}hs9h{JP?6M2>1YATElJ^;J0FZ`oI z={)`~UjPU+EpTwLCodmmha}Fw(s%5mx9GFBxU+h=HSE^?fY0b+loM+=_D&ah!nk?S zqAqw~n&zR(&^vdOWz)hL2v|^A@j1i3YblY@nzKE!&b<}3 ze6{{J0ur@ldEXd1q#$JedafI5@l&nqYw-I-9`7rPNZ9dv+h})nynVM9{PMo-AWq2h zb3{A3bDQWBr2CFlmo`?Z{r1_3oq20G1iaX-VdH;%lwIP+AKBbT(|JJkzHi(TVzW-h zX}_2C`h0d3gGO~<`^S;(>vmn+ulp8me0ILtd*#1MPJw>kiP{gZ<8fo4UcKI!wU6#A z+0X48nO@MR!S!w1&C$-$#m-k3%L_5=#a-O0+&94u$7}A*QPcNzoL`)d19hJt!{uw9 zfCAxNRMN|gU7q)|pu5`JPT#HF=C0rON8L7#&Pm_9i{JIiBS_Cn*-!7g=I-gMOYi%^ z&+DV(`|J8+Z^JIKPFv?S2X(f%4eN~JfmN|Bq@@IUwB%Bfx9_Dt9 z|BT#c{G2zwxBDy@Kb#{*#r-f!8khgLH@*-1J~Y0s`#KvxwEI{aKZO5o9own{wtQb3 z-|u{RC5`)i5RW^K z&~NPYV|q2x<4gY-hK5ce_I%fOys3gt^4lK_8Ylkj2pUKJ{^tQSgGA}q_;1k4M$q^T z4icr_XGqZao}e4k>n5>4y7!0VKj$a%1TtT{ecnv3b-v=)pJqsu-=lRzGQLMU-097J z*ZPikH^eeud4m4}=JvTWz2<#21&#N8sUuO=jTM0I^mx;~A2|=XzaRP!XFgKBzxseL zU(@}ELEj+#dse@1{rlIOE@r@ID}K_!j<3;um7uFpzFNb$+K=*2`G0;vCjZRgHRP z7mg1hmqjkyW?P-OmEvj>N61Km?%x%gAKpn@KA$ghe>kR=hiBZ@wm4(+va?NzF$Mhq z#!ZFgN4`~sde}Ct*6WwHt+e;4$URMx_viCC6ddJ76k(f7#Pbl$J@DES;n!>Z=)AL?0e+VJL-C=u3lb%9bCHc=l&WT0*Q<9>Sexmrt2w0 zc3z%^;D`&1z0}-kho^_O*qO3Kh+-er9M-stYiQ~0?^CJYC8-AWiN0~jYK50aS(x5;H=NbsqyA!cy zUB_5Z2HGZk7s*`l*bbJSa%sI)TuPh<`S`R1P-dK<1Sz%7VfJoT!0bVhiMb$FnC-eib-CXG7hq-1P-3U)4DUA46_MQ{gs zuwzt>T&!UJyyen_0F;e5?o2!+H!+Z{jNy&&GV@`N9+b9?&kO?qYsEXR0bFsJeJ}(2 zjTD86I*U^&^r*F$^U^_Nhbg{Al@<(*HVnvTKyJqPoaGEWKA-h5N)5V+UW={@YrJfl zpziUK^QB=EZbl*k0WT2H&hMqySiqQUx{qLj42Hjj_(XE~Doo ztln4U9y6)DVA->)D&xb_<>kgI*z8fEW-8`qYekJ2LmIYc^wC-&p>f@`*!FtGc#O=j z>?wUh72>l#1MejON1mz|MgGZDh(pASK=dYQv*Wt?HwS0(eO#T~E^^~Zd zVb$MxhdlIA**wY=XOFkHcjoiPDJBO%cV5*0xWkTgJz6Y`A$q=BX~GGlIyX`a?HD(5M$ft;CYSEXM^gd8}wMv zEx&S+<@!*1RB5Ky{q1ERQT^PyF^&Kv?K%i)g~<|`E+=djrgDn;wRY&ztJI^#&hnUt z5!7->czi$6RM=PO0uR}X*#iW4)y8e5I`PJyLt>c8(vz-VsrA{0Ey(PcN?F~Srd?(J z;7o2H$k`bpO-hMsJhOX%8TlU4q&tzUFJ0GR>IUgaJQ2iNl13M%(QfK9jNRm&w1*5k97_yt^P&1okOm2XkX44@ z>qF^fdn`UTsBsNRZNa|}C}y80g!xAFf@cDA4aH$impn5il1i=s2W)Y&YB zp?WQ!oL7z#If~N?i#G$;rFu`3Z$#;N*wiX*nwI+`UwVEH$l2=HRH^Z5VKSYxBN_KJ z2R}%K0>~%&52KM=v``eQk~+z)Z{B7sh?R_P|0=83wbW+&~>A8aT0lk1*KB?@D z?V2AjhnPB$sF~jVPd8%imnqZYaAB>fbJpU}PrUqxPUZ@@9L1to+RJLWX|KNJdsdg?bVT|wfr?y^S+ms84E zKl_#0o$oI%*)u#g_Hw!)%|M4Hw`R<<0yK|w1?x$?6`y~aya+IWSN8GZDdRNf`>8#& z+6;=G1dA4_J?J7(&5a&49abVV@Ic!`zX|KW|VLQ zFr112JtyAn;|bkp$6ASk-o)-#)=<7v$-j3*#>2GkzlKx71>_{N-5-thwFgyn7^L0R z?>}{5i2p+3LZUnmz@MF@;IPGSn`+cJOo=zhW?yvM9IYFQS{$;zz##~zbhEg;zvAlP zYyvo1-FZXCwn(viX_wB6MLI1l=UNc}3=VJR-WWFs{rgI?ph+t(x2Rhr7EySdV?(15 zyL3d-&>%=&i=eh>wna;W1EFE70sp`Iy~R}@!;7j6x$k;n7S2abT1OSxu0U{IuO1dE zS)*qDWH6&7+gOs9A1UGCkyk}o_Y>F({>KgT&ch$gOwe%C0oj-I2wBeA3am5?!k5QW z^)+zn!G+=2A?BC0PE9Rn@Tj6YY=%_8`>$4gTbQcg2*pLKE7XrFul*Iu!#dM)7K$(+1P=C;x`hxD0Pb5gJ8Y*2M7(_$oyqI`-|*&PHd!*EE| z(F_`8C$+DsB_T0&D#lwDT5Lq2)Qq?t%^JV26nLG=X*yK1)O-_VcN{!iX%tEo+Zm7a zAN!9n3k!Ll)_JvfFgZLT-Nmu=>2qgrnOr>%-_HXbca(tT{TmSwDwlsoJeVR^qA%K| zE)JV%oL3?e!o*QSbja(Gjf5t_LNP?@#pNl)&<)P9`@;}ivGr7~$#9X4eu^{dj^Vpa zVotj4+5V!_y)3~c3K&mt%sdm z0c+8_Hk^I_9LVckU6_Hy)JY`PfKoE5v-Q}Hh**1#KvQKU=}fzkbZA?q6c5a(AH22e zP$ms~)+=~Q^H)Mz-uTHFf!U_Xv&)6lgA@MjKhO&

_7yZT@1J5xC*DIx67)Lrnp( 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

m4Odp$;#&&;F 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 z @X^qOo1>AGp6HdjX*aToLV-3!dwk*@l_P_@%QPw(-tm1t5?Cdcx)c|LR;l&CNc%mkKF zGtb+0FPEDTHCs{drD*oKO+T(rj};DT32kkAZjo>D6%<78+Yo|sQ8w}$6N|pZ5`?AW z1k5pB8NUd|eC_I0cln09FZVf;rRzl}Q+>(1igZ<*ft#i?Ukxot_gq{xE&HP8+r@PDGhmIEb?NRN^#WINNqj zw#`MYG|Qz5+pLt67Q#{1a@&&cK$8Klc#=I8v4u6kw_m7W?L_$H7NUt%0A#Rp(LAey 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 T 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 SIv9OuPi zgbEq72XvJ!+eNY0wpbuA%WT_ApaVW=i%VwM>~(<&_}1+%GvCoe8+>Bg;2Pms_UWB( z#U(QqCAy}5r?8RPVYu8b&I<(+%sHv|Yg4u6J3qcq)G6@XyP`yOK&^@>xz321FI z!mQ|NF)rEFj_Oy!vPH=!H>~U>ZHJ9-1-X4#rm|&_8TMnS@e4q+Ozv;$AZm-cxeQBR zu&9W_7p=X}2{VzA|5fOVX8=M;N?n>KT0w5P>2n5Gb_%yea?*~U7AjP(_^NpEv=47J z&4yj%C@%9!mWZxSGXYwdROJR{lw@5<_jUxmg*J$HHI;TT9qK(e>ZDP0z;+ihuv>;T zOgCP1M8Qo_1Tfb)xy^L~U^SXGTnYXyoG}bO)gjb+P0SgyQL)GvrJelefRq67*9_1A zb7}K-?bp#~=PP=qUZGQ8$JcHTIootQMVp~kTEJR8`HpOQ0ydgbv6byp%9QKVR0~Ig zzd%9}n#WHISKJs}Hxxd_nGuz3%&FLWKWNKEj{Okskoz-UP>}Z?O$wzXYa7G1!5|Q@ zqt4vHCvS;M1fq^2?uV^Xrv$$2`LcP(np#*ho=T9}#sFct*4o*TxGeir*4J!jy$22C zmZa!u-~nF3Z+!@N?&jUs)+Z`d4iCqHezM=}?@Kwd%zH)lVJNX)2)aBJV&4rEs$JB2 z?Bl(6KJ?8`AJRUHvQS3zA(ziu8`ZeOxWQ4WGtCkKt&snYMD&fl1snUORe!}3Qm3{2~><|vHn<-^? zn!V#0#cZ%CyRSbpdB?Pph3h80;H#oYGiG^@Ak z*%XDLMe8B;PQ?kHNE4T>yCPNKgl0L$y3skCL z7omc}Xld^NZEuPI%7@lvrI&;o1V^;$6Xdvt)!JbpcPI2FSJDxJt)tz`gwMXa?L02pVwW*GFjL zw~%Fe4NgNk8gDTlAm$4q&sJsIC%zRPA^Cn*gfGAoq+@{u!#mW{j*%En$5F7XYY5(n zEy^nI8pSP?KPZT=-MI0jQ5X_u)1pM(KSs4-$p#idDc4@FaO^IW5RkI;>pe_3yVeUc z@-`|3cq{G2_>0?TKvl53-<2fwfBcL9oS8um4OBR;X-)(iR}IU8SQ)BB8X=(<9igw{ zU~Ha@I~OrF`>UNNExjbj%%=R}i=6Qs1pjsMnGl*X28Fv-XrWtCJJbi}yE~>-91Gwv zGA}x#qH7SQWpqQ?6ROj%We7_OHkX(l5RKs>hO`W4x5MtuHyC#CJ+v1c;2z7wOa+B93Jf5$OL{$Hq1j%U7;PT(*Wk&tXjsnowPw&^Zj(7{=iWR#JlZ{ zgjR&((`9d-yiiZ|<#HS9>FL>nj}W;lWbZt(vquF|jeAGI(^Ti1Iq@M?h>ATO$YqbL&Y z9ZtA9KkvNS7E(&5oK_-5!a#0=%$g`UE|U&i4tA*wb{sDw0K4LwnLl6>Z& z4MN$ZrdhgXlX8Au70!2+p;)wX`0N@Llj}8s+kS93V18T^03QP&27wt<1l)0;ufBQv zc6R^K0H)tSggfvNxx+&(4a1aiZF?Y7CZT@&ro@4yY!6?CbtsMt_X^_Cg;;w(GgEn6 zIf8sBDbCs}rYfV@=V*<}7Rm+kWKCTI*kWgDc$Q&4+mnw}H9?S@QWVTZO2mW)G9{Bi z%S^o-G9@fM_yYXU7wyK4_f1)*63bx|=14EAEZpOc9e2e$Ce~r`eOI zk3al`v`s>%xG<;sui8VoUcS@iJHn<}Y6o&DKKCV31P^s?w*`-#z9syR5$i;uhv7Z; zlk}+v;88dy)++n0eu`xBhM43H3Wz<TZk_z{dW*8 zq)AWn5V|4n{g9_?i=#!W_1JFL!;eW&;sXU?zdW$Tosq*O9OHQe8UuUoz{LnWS9=8< zX;aqAiUiG_GR_IYKq{1|%4YD7M=mdOdvWck$psTOHVt8rc88NX%?hrP%C-WMMjoh@ zQ-jeolHCL5tyG9{lK{Q7b|ES4Btz?BJyYx|B6&8$#K?Drk7oey3Xx>D``W#GCuxoW zedDHxH`Y*9`^(Q<;oI5Ntcyr}qbjdl$UtLCK}G#0btYp&q4lV^2>NH`JP{){Nk;|p zrZA-W$UAS~z9w9e8_pGwX0Zp{l~RF1+zlf^kz@tI0vjGNJWbn*tPV+7K_FPD+|)}| zs5q-&WR%v0m$yP5{Z+x~h&_LkxDf_{)~ct%kNn$-_+G?el8)(dsBu82*(iEC9XD@{j3Jn$L&Qx+9Y4299$oe2$@TQ~B@>2B(-F`i5s_f?Q;~~+oO)GEPc`H4^+Q2;>6qXvSA&AzeC5$+*`3qZvwb@qwxK^c5cwzo6;i;Vqx;x? z4@+1#(=73&B`Ot$#tt)h{@j7_Hk?r!4x2#riK)aBU#1B2F4hWxU7Ahf6Anr|Y9qF7 zzuZ;_N20>Hrh*skw!S!peKUah^hd9A6D^CPp^LV3-oWQnXNrO7ur)^-2`A61C=JOB zTAl?Rw1X@ZKSDwA;`Ag_ZkcH@RU-%GZaTC(x8R5`09cP%n|f@UH|^lCA|a<`OQ2dT zMKP+t#hj(^DINiCAP>$(05lRN$qX1JQ~dr)sC_JEFci2jho&J1=^S3JnT18fH$06% zSt`fz183HH_!#BL?G;JGL0jy+gLV8eBNzT0>Slss2hI_r|FG=U*>^eWX$ zWxi?5Ifp`%FGLGu(;}&%X_8e0*wcL%9y(n-HbxNMRgr?fm{0xgmHjbM((`3F5h%ka z<-?f>D_fe5N|?9;NEJOoMj%6Ae_`?`al3eZ4(I7Ch0X@(yRv&U=)za^C~Twz%2A0G z9mcK;n^JT>Tu#osDU7YSBjR$=F=NstRj&XuXz%nk%kFaPXE2;+tx4m4}aGw4;^)DYoq!&oK$k`Cn(Mi8&ixgjd7OJ6HC@@vToey?Q8J zS?X|8k4yO)L#(XC6mJ5_SjMF&TQ}V|N?Q7g|B@$VvajYCNd=Z?f}TMc#Dpzl8;E!} z|C{ zFoF><)C{e&fawmD_UmF4dO!7Q2K|ZQyz>0KU%(lu^%yk(Pl&Y3 z0yPi7O&#Howpo@erYVA+rFiBi-<{h7PnhdY_o|~vWn2Jas){=C)!U{IwmnK!0zTFLw@rnd{nW&ph zN=OX*y8ER$IzX5e;ucK2ugEFBd6M0H;M7#>;v{I3QZ9&_EP-%D!qz$5F=Afc6d;Wb z4?lXmK97?ChGj({bymO(!X1x>8fU2ZuCSF{CrJ3>ba_e+1)~7)weJpM&POy~lEeT!`6{l?W!-7%F@Vvn=r4yrwJX znMbgiHbdlTPF(a$fGEXn`su6R1ll4cKOg{~zWREGEw~(o;TU`uBh6uzWf6#?=Ma{W zM@u)MRteg_k@qEUBv$^S6bp)yW`}x-ua4CHhE^Yw_sd?FFH$f#kskc)R+uL@kfb*q zEDOn~RZ?T|T9(+JreYh zNXqWb8#nF%WQn8;Y8)DL$_p-8J07dOij%^pqD4HomPjA*2NJ~t20E{{GyBgH#Vye4 zpBKBLYIPT~>pQ0tSYlB{fr3yL{RLADoIxN%Yp;(0dr~Z$iP^I6f^-90h(tQm!{L!! ze|(jQctqF21s{qguB2u89gSxoDBu=I81rC!@(Ms@VW|sa5R3BsfE&u>>h3TanoDAg z2lE6#>?oI>m5U}d$vAF{(P>V@5rtDhU`xR9vSsT;*ec7wo^4asOc?fC0+QKpJv7X? zy#5y6nigr}v1Xfb8_^t?@mI0&7T7Vugi}^b$Wdq(b|qfRRCCsCdH5@G+y>@=KM(yd z{7a&P2=?SfafxtzE?u005-g6+6Qj-ID@J3fn1eZ20Yfrn_YF2|Xd!p#5yWVAu!n!n zReIvwt+RLEf2wbdIruI?kLN+~p*ncg2NxpW0nU~>&U6lb&d_R$Z7~$| z24h7KdclpTNuC~U!C2n!DV4_I4E_Kb1C1DwQrL$WP}Z!(>_a(qo}>r*AKV4H!!$6? z=#AR0RewJQv~i+sY@4=JjT!0CIk7jLvNHJ;3X~%GMph)A_%?UBc|~0$Q%EP%o@fT{ zzBb@dyLH1f#0=yi(<=cx{%vFW=Voe#)Qv6=AwP+)+4YWWdWgY2(b9!3Sc8?NEWrIABe#Q(*CMWcZ9$Ig{`}C}W?<4S*@S z+~PQw-#{LAaep@BI*FNBhg#r6af?D$KgmPQ{lg6^(&2dI8PHuA8V*%Wfm*+9kh7U_ zonjU#k){Irn>lad?fayb4`{hqV;L`s1$UB)F)H_UJ2OpN7Or}aqtg6ILfHa4kZ66UO5aUUQ3A3pPN5e=xL;a! zhdWUjR+3JuoS@B)kRdyINp_ICuRl7GOK|hm+Ye4c%|FK>n1~Jg1El>>AX6r2r1`0L zUr#mmhetSp7)q%d`dp|2$Cig4$%i33Ql<*v3%~`J#hE9r?%oQH& zArG`CL#i2)kyI``$adlRo(%(Gh{8#K=OWKieA>CFB|Wh9ij1FeL=vaBhsSARr!<# z1#6e3Q!Pd4nk*E=z%0d~l5juraXnfA11DiBDP^(pi)Is)t21KrCDj;2(Uz0E$J8|B3eFr9HCnVVu=#F|S(=K&t z+CrjP-~>&_7SkBm8p%x+7X%g5Fv%gJrPGMd8Z=_5$fy`Hv!r|MHd`(mo0a+F2( zX_UX4YIPC}Osq3|*LO#fi@@)2w4C6Bh1QV(?qbc142xQ)EHyzisDCAV@_x8WLOa&Rz9dv>Te-qjl|iT~?~KxPM<&Pbuk8E=QTH z!Xxo^L=xnhx^j^q_Zcxyj>i~AJK_S2RJghiFi})EnrE2XSB9A-P=)EW;f3<(CUY+% z*HfZ+!eDs5Jh%QYR_M=pO>f(coSK$g>PYH{r|kgU;sek`tAJ5$0QcQc+Ps}rXvEb- zR?!;+vpHPK#km4>pE6-!dN;Y`COU;Jw+WyVtw$?TyULk(Qs|`FTgO{q%C;)fjt9nf z97>0h6UH6=P7D(RYt$~tqQ>@xd=D_+mMURldwb=s)!{={Un)(PbJG^y(KPo(H7(Q3 zTl1)shGuF}FN(P_fwM81ms@v=8`q`I7ZglHNie* z9H)>tGMtt+l9QW;1yfZso9($*3UuzMMA(HTsPbLsw!WZ-`0!>4Z3MgcFgwiCda}ghbuT z9zW+!p@{;-zUU)ERp)%a%1H(Y>4V8VF z>7zHTx_6cBfs~G@-ACDSQVK?B5nln2m#wO}%3v&-BeH5LbW;s65~>IEfPzJgSY3!2 z^;4ND7xwp*7e^H}W+X6tyCCS`tW5_kL;jVRKaD6tYY|vYscp|3+CnUnA9%Rl=Gw1f z0aaVxM1t7fD!;}g0wVAV%{t!++H6-_!a=z>^}xd9d?`Z2n6=vO!}%D+ zlRKeayyzZvLB3LJM+X2<9Ej}06(aWlT8$9Io^rD(%gclF*o;&XuN|iqiQ;DX5|LM$&r z@{adg^osw&FBo9e3P>)!joCc8_^E*0R4n^7BBtOZ<4)dR?Uj%wqqbec<`j33v?_q( z2KrS%08tdYI4TL$KDSQOt3t=5Ju-y-VMQ;83?U|bcJno#tCNJcH>K%QDW~iK_0;@C5TG2<4m&*B zD}w@kd!IJyLiui$x&%}|7zU|~*-kC?$wsBf(2v4;OO}TEOs7u4ERE)a0na!g<$H%TRc*< zX48<{CQOc7a&u0I0ZVB#G^(!#v&19k*h8u7v$q?o$2xv^ zqRbF)iZpJ2J~RhHa=3WrmWOzpTseiww-|F@;SEx?c$4zh3L}At9Hoc4RBSH1CpA?DL_x|Hx-R+y z#<|X;X51C263)yMaVb-_Uxn#yB0c_g`a`=@Eym>p&b)#uj>FZf446}+B>NzP3)+{_NUz%i+3s`6+>T4gXaY}ZF#%g@6HHeo*0 zyByp+8`#Mb0cGMSi*^SnND?e`(dK|sNmePyEllJ^H1kPZ|GN>j8XtU`J{0E=MFiIW zIU%@E2dU?i8GiMUpB}SqaD%5TQ*x2?Oo0xAgMmUT))Fbhv^wXFv*!%)dF6b0m=Osw zQ&iAqNHIjuBn)df8#=CuDWncUtLUA1I;u#Z?i9BfmlyA?S@9CSAdeVC@POyUHJ2;l zuG9&yB1+xyCf|h56D8`whKQA|@+%7Yks@$9 z1=GB3F{^sMSG?~&(GWGhz*A6YN`hlG$JkS`~RHO*L z774x?0ldtcta`sm&W=jD@$?Z#@xT?;rDw!C&J!+%@!s(g4iU(79FyxQxxwSnao>y) zogz{fn`{%H2?ibnzqCD&?t3ndx>1|in`^GGlVhS%g4HN{qJD<~S98JgDo%If41K>qscw`JL>3Jw$O0WwW& zm)&{e_H7c(M*NE?)GjjDG7m*1&e);{H1}EXgUU%uID&I_9LAjNU~HGt$Pfr6e0p|V zgX%+x3K14Cze<7F$8TXD5mxRd<2=Xv*O4q)&WvkV{GYpdSL>(UOCw~Dqc!E2o_mwDNKMn3j#Ue+?$Wvi6+ z&=rk#vlrVaOceAbv~q_&?)Ife_Polzps4*hENp;)@TVX?m}YM^`$hHu&f*q!`!xGb zdm6DooDxitcSSzpY9|SkYFBC%-s1$^I6y*5nzL2Z4A;`<#x~Zl3A$8ip4>$bN+mLe zp~(Lj)r(Z7>fzlYDZa^j&zq)6?;_L!h=5qJY7uRc@w@Q0dqc0>X1NTfUR~fbFH4Tn zOMD~ZFNnbHl!|k?5U78|sHlK%i7E#mbg+$-n2b`IB;~SN*z;?lm4c9^KbuchTtecU zKRlI!`s|Nh*|7~O8q61qanFTMXXvJCr^Ur*nY&CJ#!#T_RPbMw^|5oHs<$;anFcs- zQ_hnWGHTqD=uR1R7N!Qr1_>i%H7}ZJ9D>woj8HpxlT+-J3oP7G8KKQ=jnbhq8m}mA zI888*L`veZPnvEb;LO(@dSZ$tsw*5zxh`6rtX>Z(OhgI$D7b()=WG)p9!`5{jJM65 z&+sgB-q=iSbqI$}P3)O2Jz}~-ZIAG$;jvCwC$x0qh9lgBDra#3NdXdG9Jglo7P?iA zmtl)hRyoL>sAV7N%uTNnTZ}ix(|9f2C{nc8#a-bK@RAJSF7XiC_0f^+m|J4q%*yI3w34|}+|7U_xL?+v!8u_A zSoGd9^SEttFN$U>9uH-sF2P~lSD+YozwyfQGk9NuzAL-&OZ0^}sD)T!S9u+y7d)pt zf~$2U$1e+Usk35W>&==+yxGcI(SijmprHyBs)CVhmpy0PW4c!nkjTzN-%$>yM?M&LXB;i#(bmXU2?gq^xGXP%#sSr~Z*eyFLUdI8{AIjIoXjsILbsL-fhR7Ja|i zWuFutqIi4Nn)$WPJGW*pOf7gYBiS0LMp$`>mLTlCVriPh%jdR6BF0G75xWNbc!W|! z!~>OczW=`ZN$q(eQ%Ku7(nFgz-}~++e1xOo7lIE@F@M@;i6Ua)9CS8jKuy~vnKK7I zRCh{k0#Ob#U}HOOGESL`LiVRY)uzAk!=2MG%UL-e(=PXiO?OqpvN~DjeUKn+}RsLhD^WI+VGD z1BO^gRsQU@T%-mf{w!K$wYn|YZH3mHv9dE^@qEY7mhk33z*+NEQ(L)pkoYs$o+=H5 z7T=U;Y%Ti;yDLJ1Pa_V zMFd2;6P~9QbI+e~Y`se&Q^a-$28uPXbuYnK@MuiP_UYYML0f=&5#O`SfbXIL%vI%T z)S7|J2??E&sEVSu+oyN$fb;+)8D3v)6FW2<9|}@Ne|~|LkSpRxPLBJ`lnXkH%dRK%9OngbuU`x$lHc>xt0K~f9{dG_QWpo1xN z#-EgkaGrWxWLY(=K5(@s#II?5Qi8~4Nd(t>ZF)LpI>qVj!=zdg5^@#^C8#w)a=P)8 z8J(MkXssd}2lZL|E0+Qd;BYjB+mRgHQ*SoN@8tD1$Hu+!acT@0(sVY8K*H&7fDKaN zf1wC>@*v#eb(!{11Y+iWaoBHhWDqd?#d`&wodC{*O%U>oUp(wCO23Env$ZS46eHWw zJez?#Pab`m#%M=W!~oOepuGE`v#*il1e4%_Y5`{+y}`~PR*!~JkT{@ z44sIP*KcboMe&Dli5c&#yPdFVh)B`3#z1Jo`P9bPrEoea1otg?ps|^Kg0s?AgTS60 zB=VehY^*RzCzM_0@=;Y=HL9B$H6ILu02RwRi6c@)O3;A>qS>$?YUDXn9qs=Qh3$!|JYuXuTo;ECc>H|SB@>MQiL_=!YM9U2OG1M<1ltE}C|ahf5ziCH_@hk^o7?!? zIB%&w+tz3kn=@t{5dPyX<-8?U(w?($lD*UtiZ0a(_@kX=;>@$=_=`P${E)E$ED~%| zYyiBJ;O#eVygSg84)B>_Ew%sbl!zSH!Lm}Hcoec8HBZBA)}kOMrd_Ia!&?7LZBr4e z7A8xwplZ(GMhS*>BIO2H*x8sJiUe1Rj;}QWm~PqOlKNK!RoW zEXaR429zpk6Wt$1d;|)B(6?1apbHAmffk*L;*a zuuel<26flC$@>d9+oy@`jo>3#ejo6NJuIl%p7p7Xn zz)lOAJSV+PqCGui?^baJRX}uD_ExBL#1SPrU`^mq1hS?cD0?O65+@g8dqa>D-gyj3 zp1GH~6CV6cmk~QMl*^i?u6~}Vp(THPA;`G2J;JjjZYP2DMq0F$9U;_gUF@9{7iNY7 zL1x8@{36KW03)qHvbW|w84z-7Z{o9Sf(X;zB0V}8X|!#gk=({+?B~Az#_Qh|lozi| z+#|}}6E?aksN50&#*4%RRAdJb6@o^(6Z7%)H*Vj)b?3X8xM;jW$4~z&O*j`#Pzu7T zxqt|If3FC?>DRmyz2aOfhbFjdA<0M|2c%q4tD>w4dIvA1osmy00c2p#v8`1Ox%aKf zkR?4)0Sg=;C^=sUrxREg8jPq_4gjxB^249G|8{osp-zNp_A|)kS3$pFx43U^;@fbP z@ewca=6#@b(TtpU-)oKF5=rWh?|(AzuDGg}1?fG!#r~!jSAPNbn`m1hbQ!f9jzXEH zc#;T@ORY#0O3dBR^?+&JVEnUz;|sWtMUkh5e$Gigg6Q;(d4{cTG4M#jw_Yd_NZg8> zMji4dTPItpE%$gC?{m1rJ7Gj8Lk{4V zq;>m6Qa%si0~b8DxY2ZqAH*nDMKJWFZrs3>L`&`=r_*}<=c~6*N12lYvP25is}c7l zA~Zz$0%3t5jm$nA=xG|oidn3JMD)$5E?_iMZt~Sb(JQN%-nToIm&#-{n|*i!-+uQU z^vi1jWBo zrVs3&dq;tD8WnFIcr|zjCVS*vBMd`zGU`+6D;2QRC^`_7c3lk6m6em>$|wp8eH~ye zcNU8E476KNzT>Bk9%*L?li?nARUD%(8zt}fl7pqGy(%Uj?`O-nQ=Da2YFC`!IgXc6 ztrum+wc^~&fKrVOVzroZ9>wxxLMd9&TzFQ2EpVt{o!Mq8C6p)lJv!bnZKh^HEsC0bP_fJq)p+QIijBJ{1H6RJagcZx27eMBDA&{0-JzI{}!*%U+dWXmc) z_vnUVpW3Ut)Y_3%_Pf)A2aVJzn+3_1#3?O|kS8t`fMcPh_ZAo>5;>P37h)9eEqB@v zTKIsWDO1sjfIMw^St6NF%hnl}P^3{Hf!d913lYI6rj--MLgmFM5Ah3ZP5}9`ty$JO ztb^;yk5~FSE!(XOEj=Q1&+fly@yvoFS;i(1NuCKKM$!if_O!n4;miv95tSGy9k?R( zCc4Az=3bV4%(cTd5_WB8-dNvw{4;facMNz9RTLnCUaFT)01 zEb=v)&o5M@-P)=|7wwuDJcb0(}HW>CtTbwG1^KpT+)iDo&FO?2?h^O=G&kb#B{0V?SJ015ih2eszx(Pivl4rQ<7 zmqp%s{H@NL*YaLdQDq@f*kI#`{uauSCG+z=glmBUWbYeLZJp;;c?pFMcsp+&+8+z- zw~^IC^nxD;kT!f(TFXmHx_s%;EoS>?#X0&-hNs^v4%4A*xNyt(;1=|IKy|~ayVMAk z<%eVjQqu0SskZCDuQQvCw6Rp*$Ti^>pD}3T)vxAEUy5WE`J}Bg3<=QX>T+-d@4Wfi zZBIPS8aM|a8^P{4Z+fxbB^fwl5naHS8W>7TH05xQve_s@b&LWW=xpIYslH7V`fwS} z)g04F-18uiA&P3fsU#%pE!f(=A_De)UCbBsunM%aRFpr!FLvK%EfnWgsTk$DrXDg< zXZ7AG;;(dkb2sg6J7+O&Q}#H-P4Q5VnSp=kAfv*>kG&pENSWXrl8sI*m}psH?zk6w z_w^u-sTPSPB6lDSE9)JXPAEb_U?QtHJP*akoo0{6ytroxCRQY-3uoY!RKx9-0IFLh z!w{`+J?98g=1yp9RBj5l4itWZ4ajbSWyNYG*tlU94tjEh*wNHM8>rJ1r;T}G8V-C81rrBrC&1lw1d5M>WGY9-F@jJ}QjX7b?kh*GY{BM77-|W;m$kv5vNnAt` z$k}dOnW*UAlveFXnD1=WCZrAi-8!}TymLDZpc}DnI(1{r5HEe5e#Hn9^y0Vh0w%vY>dSjQV8o2&of{}zBk{nJBt&FIFK;xyHX48=#L z|L#U4vtlY8WCbiRb{=jd!>|Z^?WeT!pPN+G=niRzc+D|mDQmwto&gOp5V4m8c`09s z<08omCns_6E5VIPi>(`+oP6I@HhfTbLzus5de=Z3<= zD+nNN<|qnJnKMe|!mWkkGWF!iQtyC(eMXAuxr9;kB_mWO4e+f9>I>w`YaCbM3`wI# z(2AjS_|>-kQ3*l~MRaH|CJ&Lb;8845d#`{(eOl916O+pHC;t0Qp z8~Kbz=5F>`)Eg5GEXxv2BO4Ck&7aj*GZ32-n$d`Kc5#m9k z(H>W+{hp*S^(LYjwJ2CnS2~^;&nfFI_TuTO15V9uwpY^WIJC4`7m+3mi;S=lB5BzR zYDnn^=0un@RHJ(MY94r$)XYIW`tVZjL1c@4ZGPaqdm%xbxIP%Xps>~0`+J}f0@hoEi1^v7c98Zya@1Wpqwpl>qy%1>>GpYHq z(QwoBpWeB%{_L=n;qGS#0FwyJCJKRhvqA_EZ^2G|-Zutolgxp{g~7H$nqfwd7jd66 zG2x7Gqlw*tXNhMQ*0f{2NMqV--Bktow>izJfh#fV~u@ral0?R*EYp%?Tp`Si}WyzSV?zx`I~yAq%R zr(b2m~|Kw_Q(3jjdvSQ*N#o>^kGovRDwB`KnbCjzG z-#g&YLme17|GMZ86Re11xBaleC*O?q(?L1G*y#AS2d%u~GKG#(@rE~X9O25Gaghz# zB|t-4LRXr|D}NlF)|LVRe_W)VYXJ)3hs^(mmpQJd;a>;(681ZUni)MUx^M{vFn$}s zQlha4&UkT)9)kJe0)NSm+Sk|a<0fi zs$W1s-}CKM*n(R`mP>W{8=e!0sak|ZWgiKnc7O%KXz!wGEZ+oDZ+*ZmgvYu7J;zYU zRac_t37u` zf1^+-DR7@A)^W#-okdJ%m{t^PKht3=B>6gVlX2g5iCR3>RIF0l-0V|tT4sZ-wu^CR zEKogQ8iMXVI>}Prhi)t-L)U$IOY~#udPI^JWyk(2j>M*3BJvU~b)44*kbz!pGfL$U zUGyc!mk!=Vi$mr!6Ma-3;KV>2GT7XR)Xo0>$x$a~9IcZH;km>hTE&HI-Mf?8xi!|q<`BNxr#0*|^6mDt{k{0c{yDBSB&VFn5 z=-vBI-uonb=l&;8DCmXnU3jWObLnVg)vOR)0c#!6{AC{qos3}fh4AY7{9`of>AJzh zpOq=PBO6+ha^{37IDckkqPp#YZa@)3p6v1@#hn~k#u?{ZDGeyPts<`7h1tK@yrY6F zMaTRE$15%JRM1NktL%rq8i@^4e8}{IP1()7LsjxI0+%p&Agh$k=@JR27eRS0U1G?P z#*G_~u=_|Tv~5em$HiKY5f4CTprJPhoSI(sIBtnXZ_k#|ZQ(VW#5sh1>cGhvX^YWE z!k&e#lehC+LF#3Coz#0V0(#pTn>pEw851}cawCp#P%XCW4NX}*U$`Il9U=pDQ1UTQ z?y60%+Qv6&LobTUoZU>5PZ`YApdGoy5Y$|7gNNGg`qXza!NSSHEa#;?baG09`3R(yBo#yUkS?tECQo)G9p*2%J=_xlnOBA&t4Hn%KS+)ZB6>FWc6K2h zcurJ(2@Bc}3}65>#9VpqbEqUA$7w)g{iRFb1!XFsa!!swla=1XY+ECp3^w4DWGCxT zP-H}YD|NkKix%zfNRWG!oaJvpC|WF%urnBkUQP)*ikt^b&(`N?+31Ay2*z{KD2dv0 z@27gZ#AExS$NB2eOrkn($8yVh^I{)BPXN&pvz*7~cSzJdZe_0#J>-4cuSBRvy~6!e#4$aj2r=$p10-a+q}-9P|)RQ8xdfBZ3O_^YHOlf27J1c-ax4i zYlvhNd*PYcU%Ogbn9U6sm6DaC8AyS?b&48%(6oIJa=A3@g7b$`e#;SCBIMhT&sk!Z zO~f-L?Bkpjm4re%4m(oK%``$?(e#eWkl2i1#@0<#dw48O;^fXccY>U8AWB^@H!v!f zqW+Db6-j_v0U(pSk-;Vt=y^$bR9#to%2lf*rz?T9^7xCRKjVPqiG~a2F0-DmO9>*{|be%AG#_u;?Ao z{h4{MsuTJwdsh)Tz--cpgIC9`j;u(PKwxj;h$+=p zP@;Vzz9jD*QH+WeaAuZ5SoCkwRT%ZG#Y%kRHFC)?kfqaM97T4#@<87asYi~r1IBG3 zxRLf#1*jDCuJAr2Gi=javpgZ1G~0^TT~yof9vn!AD5Xb!ZTfrfzbB%m<(P$LQOp!H zzEWJ~j1pge{r2q(MVOF!Of3kbtPB0zx6X>d?|o6U2OSVNiA<@pXP#egqkQf59dy<` z`|!T-+ik9@p?v(V@tkS)(AMQ^smr;e6_-O5O_{I)UEglyypzPo-HOF9WUpR@qOH7h z1E-j4HJaxeH-1C3gBT{K^^_^T_4QXzU%wz~N}-;c189q7j$q+MSnwpEBoL)Y)^nM> zFRp;N=P(^QL8GGPCnuDsTyNLe*YDzK(s$chnQr!Q^qeV%`xtNRwl91b96y&0B7;?A z{c{C@yuvK?S^BzJ(zm{TXQ&!*q6!lqOwK+VdPblOVFWoO)mfUqI@i=o?*NwN(@5!{ z1QN32L8hp=#Cr$4Ow}@Y`$xs1q^3(|vQ5_A+jqXnvDpu32#!@=^FlUHRF$V1j-+O5 z>`;ikX@Xgsm8MLK1bx7FU6oxH#f{I%LQqq3FcLM>GeGyed`~?yfk#J!yd=s^D=-2u zV$ZqcBk6T6G!vI)Q4Py?bA=$!&N9>geWc#l)4pe6tyaUv$*nR6y?wTcYE|$zeVqRRVWpQ`x2leXDYF zFBO+Y~fG2--!ZxV>MwhIFV3bo|(H*6X>_s7O}KihK*&vuZl7ADKqE#;vy!mQopW(Z^p2)hE1v3M$_#K;abp7c5q~LX` zG*3PFUiEg20oNtcNE$G5^p*H*%ccBD5lg-h zb0bl5M~?N$ zi~Jg>^*h8s2@E7a6kg9}wU5l+m==YY{`~-VK7?PYUZF#ec*Q-nwV&l;rCvqrQgGdF z%4(mA!r$7CNtp*{7-+b(m0$c^lTeXjFNV2vx62zn$mmsd@mPd);6*@!c)M{dco#~U zeOI5KuOyw!{L!4y@x@dawm9*81(R9=iB4a%nQ`U|ztYqPR65wE{Vgj9}1Opv!<)K?H2)n?DxED;dqa_zm3QUl65)eox*6!nlp`Q!8u{m7RM+3`Uq zR9&FwQMo3Pu&? zqPzrY=)&{5npiUP!e(m5(Yd&JKF~NGl2MFk?LbzeSLYj^=lDC=fU?vhMpTZhTpB=g zodcWL@|gYG#=CKJ>_o)f2Q{Qp^jIY}E9bxO3x$~RbW-uKR7#0`)y~HX#;)6`udp~E zo6&=d^w`{4jdE2o2@lHyqAPrL>&3|UBI!Vs#KxS)>%*KjO+Ot%(4(%@J0jzm9GNx2 zUDl2NHfA0O)_nD!9tPfxIut)Is0-4qF}?d}EUDx98zqO`yjBqfZPnyrB{&9E*3Dfp zb~RINmD1mQt7+!vc_K#>1ur57{Bb~RQ~T1_*s*0!_AzLmBJWJd56oW^7plL)`*;h3 zqnE-=D`$ULEwRppN$mzk1uviVVwKK)!MygE{1Gd9b zy98!V{4;Zymt_?!YaY8SiRD;lUc?W=b3lY>B%M2r+QGt6APL-v(k?kR<1M2wNNm(- zV?LrpaX}&#K7EJA)$lg)nZqTciy(~tBd2$$hjIt~!MrW!#`a?>s94Obz?$CU;PEth zhu)`!iH^Ke2~iZxReRQScX4)lZi`fMb>7Zl7ukq!Iz&MJVxoybU0eo)tvsD=3+{ z5?}1=c`7csWt;96iJiMuzTPxw3=5ip!G#8NMI{p(7WM+KNXvu<>JBjTylkUxqwS&~ z?dV~#58s!DF#7S`3MNzAXK&qqxNB*xHi~Y(8#M)%S68kE6CzRGjjzCjxbFu&`wC4ez+c^@(QrJ zD^>IoEp}j*;$2|tbQ_lMP&wM?M=C>f+hbq!N2+im?}5K`bm{E`eyyD{pvd0(=xO%W z|AXx9$3OF~Nn`f#{`>DdVaIP)e+;*x zq*Ul$6@CqCacM`sAEX6ootScqin2}F&sR&puk5~~tP^fK4O)>3Cj#$wAIOEucmA3+ z3F}SaMWW{|c*k^bJ^1MD@1DK??d-|J`;R_&{5X4b|DAWUv!_o;gmw1*Q~TtT?9tyY_$K-&-k|WSc8{|{S2#%&kc=$4mNh{AS-SDQ zAajx0oujC03BIgF#g;V%Ox$gvAz7Cu!#mr>r-Dda7DM|MwN>}{l6`NALi2@-pz~`a zxAU1N#kn|%;@{Uz!mLI(gRkQ(-)v!?M>}%BP0RMw8GZUyw7)5RCH(0$(#RoTuDH&b zP{0_ZaDD#4iYWX0FeO&EmRt5Wx@AVSv*R#HUiRMBz=Z-!21J|q3q+ArB!T1NjmJX; z*EZ+d@J#I2hmW5gZ0x6pl*!+I`rz^LV!RerewjmpN*>Ju{R52I>>dN)rC@Y8gk@c%{@%RU69n?7Vv~{KiTYVNuLB0!VgE6xjzQ zn$wLX8ldOu1#^XhT=)hYpBPTeN-7pNLB_zBK3`463*%!j0Xz?R|glpEoB%g`5m4|7vzu zooG}*c7<#1X4h<14d);6{F78Fy4^$|Ir`NQen1FmLQ27GWLJfwzw{SuXTt45-!)rH zzQS<^*3E8{|JQ$}setjBVFgJFjOoD>1(qF&ne>Rz47&?TXTT zl1{w~wX&&+6Cun`WTrPN0;Bs-)_zSOUK0^NUddkNqtyx$4G*%EG~PRknwcQK(}Q(h zI;0N#Ouc8|&mwHOSm@MDj!QmAU_H1v_+*;nv?rpzGZk-|{a3LQi@WCN_;cgNmF5|= zzS!fI1Sn4DK4N@e8`5?3o;Vx#_u;&;Hm(S4rwife^|j;G_E777#0{e+pr=Pds_*G{ zHK>XmX9N=4HY=nUzEogC19f<^5W_?!y0JFi6E@JJ6$A>;f*Nrab%r;ixB__-zPMWZ z_}L%9dq*;}myS85n5{ssQihtG=JS@;JNs;FUZ7FKh4GSn3x4OXfGWD1 zRlXod7A;vVM+}3K%vQNYtEWj{MTdgXkpL1vnm{IuOb~=W^l!gst+n?)Cs8F|b7Cf9 zZp%dgnR)U&_G3N%^+vd;@>sln^Yr%lO;N5oF2k1fZC4O1(%X}S7v0$Imn8eJBAUGT zUj`Z>@97e7a^;ew-P8C8^fW)W@T9wA+j~qk|f{m(a6AN^R1_^1BOuEe9$90?C3-`>aZ7*S9!8ajAcqygl-oT;T!KULP7OS?Px-2IX}c zNVXKV0VgTBUCVAoL#=Q!?ECJigOu*W{JO;sof2Z_aq;*5`MXT{@y~!0^%9&&y4n}z5tU(56AFkYf2Y9Jql(Rl=w|3sBMmiA?U#W zz)v0YL)M0*1%-1IRMP{ds)$y^oV9MX^WTUkibKo)s>pf7tH$%16^;WM#^%>)Q&^f^ zyM#e#GSEv*XQjY6mVkO%0ZnmL$oR_W$4vOpR1F_!k?VV?O8>a5%lXJVaOP#c0c1ecka;lOhulpmS`i2Zyz5YoCwBqtfN8HftAOD8XAPDm z=32TYW`LcgQ-xY5723o4sx2RMp6G$ZLHsO+#ydCbw6j8suA?qNfSw~84jfa7PP`{`bgJXt z#zF?#hfa0ylKtG`?@lwdzhsMsH7b73GrY3BQ*Q9$_@u1Mc6Eu5n7D5}Xn242*O!}7 zfu|_MM7V1);KG$n7|4<~am7uSg3bUZx=043OAU=4RAO@+;2WcWmhUUM#_m&Pn!8E& z8$>Kpt&lZCE8fL{yRw`v@ws?$Fn6bXe?0YrCSSCI+;96kR=mp3I zkt=)mtk-*=9o@U*&I3i(OVb`v)ZrQmzL@M(`d7I#iM|>*N~xdY;XrmETErlKlWyLt zu_;9$PBMOgyALyUX>V!!Kv&q#AugUYAr3tY; zbvDJdN;?J_dP^Gy&6Tt(>-J3duyFrLNtfzEtS&C;)}cQ2o!O>YFk`@v-U~7zqi`pA zejerMR~xvCtBq=bLsmUCs#(fqeF-<{q6HLb4j^06j+PpKjU@9i4wYi{Tv*drxQrwShqV9E4 z)-s!B+HcNUHf=Jb3aaAmN3*rpImYc9C>x}Xk`41=GS4Whb#TX12v?|@i5Jr@>O-qe zP?U0)A`p7=eXa+a7$>8)_L5*&!HRU>q-n&c+V<45Lz6Vxt>Rt2F=yqV8U`wr!Jy#) z_33dx<%I5!q*>i)3Ga_KISP7f?fZT9gE%!QNvM;@gJhp-!tiN(asb&V&Ku@PEW<@~a#fxW=zS7<;WG3V z^eHzBgpF*QH!>&w(W6JD zvVLP2H{5L1n<0WnA7&5bONKk9oF4`mApVR8ZKP= zn5ft>>;3Nva+u``$H59$m2NEEEXrU1f~QaHC2q2HRFwzk|NZ z(;-bXf>cl~;#aUnZ){+61UUoqso}~LpJj`dqU(*>VSPNs@ny=V?Qn_5vsE({jKTV@ z*iqqKaBxHO^d#NRPFeGM#QTA#f#*5>-hzzrNK&1sXaW_9A&PAafEfd1V~D^Sc3tK% zU~qiS)@jI>g#Zq#W@*iczlu7eq*-0YCPazqD^nvthRP`Zug7Y=YYv5EM;hy&KKemx z%mOA`_Gr|dtVgCGKE$K4sIsC5A-dOm$Q|C3!GLefq12#(Dnz#vTEtKGXOx05B^FWq zYCi;%jirmwW>!7zxw*kwQWfnMD}HGi)1CBCllkmu^w~v6+B3yfcPI;Egr6D;_)zW4 zts>|b>VJ!pFo>j@77gS&*t|fw?SVZhKti!a^cQVL?t!_3dTkpJm6z!!ra>pxlGY@=hBfKYmvF%%7$Q;^g~ol4Z_JA1RpnAyTGB90;*6dwn^% zv-49ZMvdUwI;q#4b+Bqsk%t?@je4BpXJ|1Jm|&o@V*&i%Pt1#^z&nY~vyT5Q6Sam(fCZ(B2m)vRpg8EEqi==!CN^g4s9q$t^#ix%XEmRJ z|B{}fkmCBXs0q1tgPFEByKr0Q?^M~)H_C);TVRPH~4U2db8p|5H7M7`Z{ApUtLv34D%RK z=H+??)shHL=QZ5k+LO~%nhU~GE4E&u1s zM|qDaHq@#mR)CsbwIR>gnQ;7-+?u-XCE-H*ZriOvSaJdVrXO`4;0z+R?(a2gqF~I> z)HZO%*6DV&4cUb90b9DYuVjN&ZnSSkATgoLU`-)`gxu4zDx|@0v-((Nb zXQ@FRee~!L)R%HWv8cl6ZLm~=CrcrAI4gsXx9zN`Gh*R18h7c4nsrqo{~(P*<&ZIDKe}?i?1Pjx&FiJl7pZ_xjKv zZBffHMS*D^0$2Lo22;8&JqY(r1$*8!bHN%dnxNBo?(|{g?su-fzm%x0wMY%5;#egI zo!QNeT0`hS>Pu!Qo9kNNq}OxhJQnws9Aufx*Gx#760-TRU2FoN5z_uP<|fL>RV`4N zVgSvneb*Vh;bYx|2f}VP`B8;+_c!trt~z|cmVat}S6B;QjwOoUA}p$4Fk3@p0u%O|H{mHS6_Oh=>Q)b2B(%Vmp4c zawI%=@Oma?WNC4=IKtfe2G`-H?MxJ;j&usCohD=V+7cOyc9SI=zDj}dqdM!2RisLA z4+Bls#FU0k1vXMeAj@)~;WPQMvQ9IBEY*1$#3u>pF?q*vHFc7hEB{=udVD5tm*s%j zcl>|iBOkkFVHutk0sB0ajVc1lV$_S>6{$8?BuU?Dp1S$>)G3#aO~bLkrVQrJb-^x8 z=lrvq@|GiemoPQO>x$`)jr+5(xvqx^@{AkLrX16c<{cP%Uq0Qv=Lq0GSMMjkd-639 z8EHm_7+V2nnTTsb(@f!4-y!TcDB=p~-@tP4LGaO{o2qb#)jF5nR&;C&Im?i@(PAF% zX%?FW-Koxe)5f)SE`Dg1`)jD0`EDv_5_2H^L$=BU3#;C%LwNH1h$b##8kyjSd;|!E ziBFkwRvn+ZH8lfw%qv*9nV&9hNn3m8(pxRT6U`1X{<{Rw&`QC~ydr3~q)TBT&O0r` zk8;w9`YU=gE-6N4(1Or>sQ`IP*h(#SE=X8PnkObGQdCmRk`sqtuhOV$u}oF7;5s2_ zD2b3u?=(<`mLoR`;1TMjoy8A5f1v{}od;rK+#n}x6DW>XodaJ&6fC%9-XB9-)-$kO zon11WbZ=`%zHe`Z+hVm=X_%eF8CQuPo^Px6gBSl@4mD8x0>eSFHTD|+36t&9WDm7Z zn`)jcQ#)SnCsDiOo{M|*0Z>rp#u&V;3u^1lSxAKqmI}cbYMQkBy4r4?fX8m2+0pfK z@nkz+;35M5nehn#n9*%YNQ{c*v28o2QCm&`;HF9u)TY5q zq<`%z14#;y!rZHole3-bxrEpPUMrKjE*wQt(7nl@>W_;LT1K`h0No~qkrbz{C@W!m zs-2j8+u&+y#~H-RrC&Dk=Ea8;>;9vzcjCuEwz7UgD-ekeNqe(q+)c6?dXLg0?YbR} zXaGy(tgj?~;%$Ta;)I=#rOqFKe@s*$c@naWQy!9K3)Z_!Q!iz9I+ z0cxB6@1|5`m+oh#v`WxiF3Urw&9aI9L)sYO^JduTqCAV2ZObVA!XNU^F5A9E3Y({t z>Y^VnyU;42OKEamFLD1AgOvmF&jtl@ScJ^ zR-&pZ9`XZfuk7WtOGG~$03%G1R(0cXnZHYF^7+8Jn2I989pn@3x{y|5<#i#C7-uy>|IXbN8fz&kB41<-b0$^i^&rpg{;1)YR^A0BvFtAJSEcDd~iA=E&h@lWY#%YS1?7CCP2w>MrQ!)_}@ zNjA{=KRNV2*tspjJzhcG@K9tYmVo=w-mqzQa>s)BZY60xJDPYtd! z3*BG4nl=}=q@ukWSn^@|5m;hgyCVj{YO|RZc3Yg^JmZ&3FGOvd-lreV_6+S-S;^qK zYF1mw#%ENtX4OU~?+gEX52kna*iHnGX2-t?qULt&9v5wjFwbr0D_3#w$Kcg81||HN zZ;84W^I9jaX+kGC<6QIacHO(BI3+J`>#Sa{Zf9P;{ImK zFfxQtnHwaogE4vg?)%>2#!WP=m1ARiqEFE6dKD(axIem@l>3ms z7L}$}tNxp-W} z3$tRdfNfD0HXDok@C-B@;@C0H?XlgB)TH*^Mm3boJ)@A+nN)5XsSmhWj9JaCxGDUY z1Dcc7_mH83=`xKTyDxTTnXv-;5k+K>@rE`HL}CnZr-U+a^BAj$cwc^L$*>Jg%q-H~ z)4nr{DgA2*?eyP_vD!4pyrpMbYaUaw1T<0D_2vE<5G^l5dpSyiT{R2dlAnp{S2Kk8 zyP@wR%W>e1qX7f(;qQj1Wo=m3)$Zj@2H%;V$-QXY(BayW3X2D&Cn@&q3uv(3xl#*f zIyURJSv3os3p(UnWlZp3gbjs>rG6owd)C0TALiS-m_GM+1j>nzB8QMTWIf$I1>|X2 z#M73`*x?kWcDl*SS$N4ZYWl^omoG|tcB^{Gh){EIn_{V%yC_MkP$fQr3%X@)$8ugG z*d~yH9__+g+0jn2ilCU>b!@_cZ_n&Q43w70%5G^&eKBPm5H%Pcd$gDy`ys;)8sV86 zr42U0R_WTL8+x}pZK4pGE&_;jE_}2@rd_)$U!1>pKid1-SGmfs_~fkvaQwuW zyryT!lkZKzZ1O$80=Y)>#ia09M$k4t`+FP(){>(2&Ci23UOAj|ecLaf1zMAJzo_=L zmwM26!jCl{>*y5AV4HQsPMSmJuZq$dqgMGMQH9@Ryo&N6Pq?~WSE%MGX8gWhs55c< z?D=gb64=&mI{o^}uGDr8q>lSp7-Fp}d=9^MM1ltW4ToFQF!vUYxQRxp6y^==H=2(&v_k;1M9ORezm@NbhsMjkkm|t zZ29sm-ErdGUhNOf*7Abhja6)d5y8}vUSJN85cNnYz4Cp{4{P%kVfSD&5vN99 zs4hr$OwuUT)_jXjbK#Q zU~t=QH+ky6GMl{4ZX5>XXS#CDM@+wmir`ITW;u@TH@NX9QN1c$Jsj+h8*wM{`v>>} z&+DLtdhc>0X%oVu z3juSI9?>p?k1wC4aUtahS`_SV@g?KeG2+M!j7a8O`Q>CSe#`S`9!KAP6+h$j7Pmc6 zW@|#kbz7iX^#E;Uyh76qgQEe}%_$}3Bv(fiTkEaR2ny9%guQBD1`LSB0l^hGLqnRu ze@L0S^hGn+fkViTUD@H0;vi5JtP$XUMdW`a(P@+oQ|Rm26~1fw0(TVHyOmSi400C; zAt~;6$Hltss-@MMzq|eN-(`cRK{Q2aXTCIT3Wcm=AqnvKS=$Zw>BW%fW_2)B4swTC zWz2mJp;F#B)AxC?r_X6|{w3Wa)kI|&M@B4GTcS|{5|H$865Ftx$_oo_c;A@%UU74JQrj%} zq)}a#`SAd1-=(Cq-7Z^N1o##@cVpXR`Kgdxrji}AGj9rC#~B>Ch2h=td&`*%ia5a)BLiNwgc~=wP$cH#w`W!b zrjr%+!8mezBAB8C`cpd*Oj29m_~e2V|4HFiHMy2zFK5+F;f692I3L9k#gC0|&xICk znUL-RatXa@{KefH3e}k}7oa#9wor>}cs|EA<-(+t8PZ3nhts}*-ZFE`wBlVeG;5PJ z>t8aw6P{l%7U)bWP5!_x2Oc256y{edDGZ~DW26>)GkSOTo;2M<0Fj&3#e)&pEA8bJ z05WDjDES8QXEymyb7hor5!;fjfgT3a+;QYw11>`w{vkHCjxc2cp@DUxV35VTw7QrB zT1+yNLXc;Lq+X)qlJGRkAjGrJB%$AaRg%!xE0lIYLQl)<`R{^=PQnP8x#4`l=Jn2L zrKggC${qBO`)+V(S^K*$_UhH-TA07|#BVFC-%WKBJ9frNjdF7G2^*Dc;dV9@at(JS zlBCD!d8ilN+61!{5cTMd@@)w97v5a7I;UYl-iOClA*B9iP{y0;5MqG+7VWYT-^G1V zN~`5Ui{2mDFTVu|;keJ%GOQ)__0r)fg~4OJWcQolMf}c5?Wkpe_ijh=Xdx4GvN_9= zJOWU8vy`@;R&g}C8SD2b<*2{lXt>a*0FgEA;v>)Vq2t6TPT(bD#oR$tXn*g1O72Rb z?XI7Y*%YUt%U6<=26gC=FUH=1TEBG*Gg>2n=98 z!2mlA3$f(sfuBlyZjH5h$XiP3ee|!sm0YJCZFO_M;iL%As&mY2zACMLOvxGmhEnDB z_7YemYhLeQumf!$3}|Tf%(3)S21AzRgzdx_2SrTjQW2+Y`P|IH@FH{uxj@vZf$e(9 zJ#PS=KX=SyDcu-Q>R)pLW$O`e-?t1{(=A@9eth-l(SN!hIxA5uNl|i0i0e;->-YCT zMrJ=Dg$)WRPOQuS5RDAsF#?@SQ-CmuA#tj5jYQt&(VTP{YZ*-n=dyLFH?-z4eN}sN+u^)~JJsg!JvXNHz?0d*w6rN(dExel_>0Tp- zv;(?LMO(c?n*bRS7WO69cRh&x7yvyjgf0(TI?};ucXN(e9Vv_KH)MheD{^*1+y{??TLmWA|W-2PIjd zv>}|=e_4ktba6DOrj{NOm?-`BIE1J)Hi&B-bP!Wg>Kz6hE$qrnhs|I?ZZ?HXw9|vf zIf0qj1>BR~VD>M>VS=)S3Tl6OzQj8U6E>+mkIszTdq!6&t9IEgRKkKZTpop;Bu4Z*uZBhM4G%$G+JF%U(8vH43;|1P0{?K-q%={2`!^q1SoUnxlnvtN>Vf(E&RM! zN#u-!LXhhe*&B`o4%_A-eT084QaMSJBo{bkcbsZx7#h-2d} zwUXglnP%E>!el!dNDkVW^~y9CvxC`%#DPkcmTp;kNA!!3&8t$&Sp^1v2mP_%r_&Pe zgz5O%2zZgO7gkotMh-mx3mXExKq3s6^(xI}m;Mooj+`B^vB`+y<|IKF^gh@a;j%O} zlWg$Td7Ii;Q1S|;;)`7pLIS-iBY}F|ohKSr^FZrx$0FibL+~ zQ15G3WySJGIS;lNRS3@+v{lVo6E};jt~1iqk?~kBXm-rK;qS?=8eoDiCuMvexdYzY z@J97(rc)z7u#UB2(NJgiF&L%tjg_!>^vzx?m!kixvCdY|*pdY6vZbGpxKy&Qi5-S^6BAZ?|#(Js5fS>e8$)5`QF13&Srkp~`oFP85~1dD==4obr{q*J?c zg9>(tu&$dvHsRIE%0;pYC!DL6;|S{+OV*wZ%IfRH>d8art_yOYSh*JpF49|Hg>5a> z@70Nfn4L71PUg)gac6Fupo@x9OQ{&%EeqRDm<00X>c6@p%R645rB<0q=2M|nP`aYt z1o#Tlyu!vSop1}|2oQ;WwB%)=BtTZh&BlvqxCpb@5=78Xo2tSg3>s>tHrSE<8q-qG-p~!>Uku!vy#oG>o~;@l zdcVyoPo}0fsrR1TJ3&cdDO-rTAz_SGQp$JMId$<0vH1T$iqFYjZ6S(cGkvC1UcDe}h~SvHqdxv2pV z^DfhaM9+2LJeRntla5Ur#wX&H?UuxD%N1xo3jUFE3xWhCgP+~$ z^b{BmCV$0DEx;=_S3jdVc*my3FE74+^FHkhPsGkk8=^YO_kCcAxiQqwFJGbO3&Vr` z0W7DNW4yVTfi!tMAeVV}>TDJ6ID?UCO()FlQz(uheEuxd2;w4XR(?f523{IdwnaL= zfNetEYHr&qU=W_UThW({#Adk(FGGie$=%n8LM++nw0*re)Hx5~YNe&=_mvV}J|rY;t*ayR3DT(3^W2bpi`30@bEx*d z=ew1fH}eubu}cS3{*rx-7Lx&Jqx9~7u9t1yOKKC#SlWb%}h( zWKCP&Z{Bf*9+i8SvabazqnAE-mjMb{9KJVY7%9uoEDc#or_ib>PcII_ml@bSukS%o zFc_b4nub@}FSox-$EVBJk4jL1nEI_c|EL!*P4^P5^W_}WE^&g3!xh2FyzjP0mMga8 z&rXe7M6BGp(Vq&Pc+r?j>#`CigDpS-r%knWi+jKp*@ z3X9u+sJq|=DLH$ndCh-uW-DbRB%JTT$2}U|0AFSUPWA+LkMP#W;w9P0Oh31zN~Wg% zSG?{xeWDHj0Q6w$J-{WdfZP0I5=IWK#+c2NuW zpH=UrtVDSpHQpvgB+N3+2ut(caL+vC9CyNvs@$Wjz9qKPbzW@}PR>~BLc1!@^&4j- zXuHk(qc4&TaI7{BJ7cc-hLT$ZMRzaCX9ZflP@dO1eq8?JHYLNzt{bI7(uu*R=yUqE zE95*o%_%uqqv%MK(R8x!wheEav0i0=4~pH(z{Kp1lF}~JAs@P7P}??!PvRCOb(Ftb z>HD>w&+YA-_fys*4J?UztaXi_in!4*ixB+nJWfZQ!=Rq4Z5Ds;pasKOU7PL7@}>u| z%zqcf>_1W!Kcnr>K~wyW?(}1A*zQa+fPib-8im9IGI;z{fE1SJs%?%BUKNlP?xju1 zfUs5P=GvorcfCKzgby|~LGN}gf=V^=k%y~x5Cz)U|7Fk)z1K709W7+17-cpPMU->$ z@E|$ZiEYuI#6j#obvKkEe{`eUeiZn_z?OZm8^?Mm)_;?*1)tr6a6^qqu1BLM`6U%r zE{Rs5-ShB}g&=ZeU6p18kHfLPJwH$|VR(a|YQjf@K?Osd$MK4flg;+aX(E4j?}CV=en|mMopnh5qeM$-pc@#1_p07`4Lwd z{~&)Xvv%K_9Oz$<&Ef;*-cb-^!?&8-xj_w48$Ubdn;Dq@3^M+1&(C-v*7183c~J0i z?9cq4eH46!@H?Pz_!rp4u%2XzYKm?CcYVNlYSobp?c%y-l|qjd$8dEp;o)AIAc#t> zH|g*))v+s67A!3}aDjA^$TzZ&LPMqVaB3P+~lG8JpbI&CHFcynr>8S!_o{MF1rBIFhC#Fbg2q% zvCYiN^5Ki7F$z#GM_sG?ZtQ+}(KGvjtaj;M>jiXsw`4U?f-m(PZiHf5Gq?~C|EA=J zfTy%1iNrEp0x`Y%X4h=10)%e6n%%J?#$XC^a(h}WN<=x-r$XsCzEff7Ur?kzr~lWcTjX##r;zw!hR3a@2jGu2&kSEHt1D0%eK6CCQJ5k zZp(GafcS;~+RqlVas{Tn!|URX$22`4Gvs4EQc1%!S01Hr&*p34*`@M?S^7pb-eF;xPtM^ z0uxmiQ(vZA2mo6^q`#DR^4|rQXJ^i&(bAn3@G@)Bx!$$3oXBr*mt!+C_S5RxrS=X zF+Fm+%)I%Kvo-^`*~;~){ey#-dnv+2R>cY;sKS?mIHvxUKcGzBcz2qpe2y)$Srj{n zC;7t-1A}0{wCl8q82H86~hq>D&*x02WqJM+uC(pO5AzG5Je<_z=YL z3+^|wgB*_M4nerb3!r?8$sEPXr7!9fD9yafON85H*~F?tMM^Jq$9{y8eL!%A`$w#U z5p%!kEr=;hO#eak)}J>NembR*q~C=HZS~TtYi+%j=K!o>hA7jb9BrUlY!Hg?Tzb!? zYns8(X9lD(`!b(YrsxtnKBK-C0+DVJ5jjDsE<8UvRr=udq;+%l{xvx!(0NSn4m;}^ zPz4-Y2>THZ9?aD63eSEu^=@Xtj4FwMPBkU&KMmT{(#n@Q%+f5KhR~GH4wHqdrKE3g z|6D=ouAF^ix$Iazb{Sut1ivuWV1nq;X4aoR7}j;I2;`&wMn-XPTt_c7B>=rj zz|xt1Oak(Oh6@|YA0uE+8$}EW*Ov*8SO{U?TQzN=NU%#A&rqAMlbcLmdFDVoN2j@> zGLY9suBP{{FcHdec~;M83#q7AVgdIx*nFPw{H2@A9!s@O)g^N6zL$9c*z++hLqBUa zvuQcr5H^$*Gzv=OJtoIMV>qeuYGd*jgB_a>>_eKC!xLEkXs)M_j815$kiA+T>%O;2 zeOmA8zBI-XKWXQnTLjsD)(Q7TYsIwk8lrcakZMt(eB8%!wfC7GoO9aRXUCqM&x7F0 z{JN5vD7~abWcFp7y0gCTcMFJicvAq1Pn)wxLTLl+ zMHbw56xm>IOaw?FArbCqgimKH-MooNFPy(vqXw_hFuyPHcnHp?!npSfibBtzGsJe; z<-H?{CO26ni;2CHejhv*QdYM+16dR2!n=*=2y6)DUeJXYNLc#Vy;HfJ_)Rj`S((|H z&>2<;ad zMK@0|@m^|J&N~)~sAGaR)a~!%w1_EYR}g*6jT{Gx$s;dxLSfk0@s#N`w&`>8xg+E3 zyY)F}C;b^aYRVkBWHIlGnZE}LsVzsT-!Dne% z1%r47A$xCsvfnvoF-%+lWYgIrrVfJ+@u8Z4l3N zG-Pa*;GB=B@kY!i@D_hi{r^DI|L`Y(@hz%Dc3wN%Nw#!6q* z2PVrv!Y>#KSG4QOB~JHAHaOGAnlL=13`}0!%c5F*nA+CZw_UeyLRErrPv)3adLc5a z&T9T7VBoe;A?M)SXBW03@oL9FclTauDZ*i;Y~M zwMLB;Cp(Qt|3v>0*SXu->{V_4BKrk}W>aePa`KszLFn~L9MIZJdsTmZipAlTD@{2_ zkQ^@G$|cx9lB$*`8n@Xs^^A2@5rx?7X`6ad_t@`4_*1^=B_Jh!*^Nnk`;ld}xO9z- z;td^Cg^w7b>r0^-26YI{7*%27O!GPWL9O%ri|ILUvWpNR#ddu-=gHoh#E#U$8(E0} z6V3&%kZfU1tCQ`CIX)_ zQen0fk^#PL_20U%Le^E_6&@5-`0{^E&Q@Tz8V@-?UT+Vm2WIB+%rlS@=9Lfyp|tt4 zLLikS72>6zOHtf@d+Y@{)Z@5MoWTJ9>BX1Np4oaT7V?na^c-h2!n^AdH=;VfLf`xi2=P%H;^(FiP)rh^Qv!-{mYxtIL|<|Y>YGNHLmL)>t%Ig8l^-) zD=O0`Jwm4eH7aJy6E&OA&0JOn4EMNnjRU?Vn#y1{|McR;ho@&imtJ!RA*F@2frno3 z6kP2A;xnLFsX%I}dJ)#*(P?FP7@%^B`TkGOUp#yEbk|Mw7z;Fe7%?+mZ=C_Vtmi{0 zopBv>q+Ao%&`=uG9!?@3vx|kLwAp24FA}5DaPn-;+%zeq+nh$FQ@g>-yjSD{o zIc9u8zA5(_d1>!tF?P|$!F6m!#E_3i-PWsS=%*tv5bj+WIVy(OMu62j0JiG|FuYPl z{JIcnDJF6@4MeyF@JOQzv>=+O7om?-DOskrCpbvg#>eom5+SPgcVk` zULUHD^j5DOE64XxR-I1>;WQA}>Ek%zr`ex5TV!HGSvFPrpdp43s9h6m?hNiD=vJ1Ytuy3S#@sveLu(XS z76wOb(?UO@&}NwVCKA%4B28sB!h?t89#qN$o@E`(P8XJx0Q-UGGPwR5&jM)!y>P)Y zroEx|u!9vW`;doRVMI(Mb{We++BiZtN`eEY z9&rjM*7QU(^?`p(+QpPZlvZ8H>Z0vlZL3db6nYN_bETc1CvV=p0<#L|G|B)@p7Ok$ zc&1mX9abhkt?~kEfqXk@>)49ObE@n>yZ5?g6Y2XnnnJrtsP8y`rdl_Hv8hYBvt~!O zvfzme%(QL2T#LP;w#1?)kc=Wpg`6R1`f3az(VicruiDMG&AN7K({^XhC0GAd_b;#R zIZqEVG83Vrvyp*^b#_2F?$I+!5!67rI)~jl%#i7eF|t*&qHeRv92C{Q|whjKkeJJo2;ktvEt4 z^5Rli3AdBw)XBD0-hcYQB-GfkpVEtLT7{4Mt~-qG24JMljF&0eC9!qBtxecQNcdT5 zPr~sV9-;R~H|R~_v>euoGi+oVuAS{rd{kB^wOIWR>7Q+8A5uU1R%1;vlcago`BPF+U?c+3zQCoAaI(R z`;b9fFdxDE_2p5dYgD;Eusoi&e4$?&;gcYL>-Ke@XB0JGO_&vy*)U0HL)ESc9)~oG ztImW%PSsw&yqS$iPbT|NC_DRaOKz{wn}~|MH&4WPHS3CvOR`0(%NxooTDMe*6@hP- z`&Y&A5m^ulA0e>zGKd6`eaH^4O?cz;6GQkJ2nnw8eE}K z56NjrX#**yRp&JEu5H`L!@A}hHMcHjg|Llm$~ig{S9z{#FvFKS1s@rnQs~u{W~f=q z@CLEu_3f88UM}Vj*fwJ52J=zKlDIfxLMeC}m3;RAaWM=8vHBOrfTO^VQEh>~rb_VV zq5I$5K6_sZ_gtXzUqAoX66cuyaC`gyQf3HuN=?IQraF}JrI{4>|I6k6F7n?C+A5b& zGH$F&BqHoF1vLl56LNMo?Z?LDp*&3+GF`dY0d+>GKI7Bwf{>9n({*H-nLX;QDds32ya#EB`Kcv%~PhgP{)ULo;r zSS8?h@TaNc{KWUDKRtGPSv`KC{L6nP+G|uezmN`hc3XhOgers2)<(|~j*lY|u&u?H z`NuLsjc4&aM6zK?#~P1?nwj<2*_hLtpFL39E_VU1P6O^m z>JK6oCb8`ZmDB4K-|o7#`PKZ5S$5_EV{5qaq=F~G<@^vxZ$x<&@}6ahUe1BqO{Ipy zF_8H9UFOCsc0UfA(OMuE|*rRMrl3%km`%Isnt5lE@ zv{wX8r{Bl1v5Qe*v8}V{$kJ*6SFRVE^ytmP`n^geNOnS%XT&KA(P@+$WeoPctq=J=u6AhMAYgS6wv_!Zif57oI>(UtwVaRgvw$v&3?<%Y3y>Q3!Ks#~PJDJRI{rdsj{+VD_u_ zN`+pbzpk^1h;@$6;ZsGkh&T?6x-BIKB&h67B7iHhV zMl^=^ozJ2sXji0VrJ!!3XO+EMo2>*`Znk{98BAk~)p*(3MLRlhGttPwb_hi_N1N}e z!v|=4R@N~&%_Zd%23vZS#c1LV9FDKtq%8w2qY0YHrQ3wp(nan%f!kmAi zZIYYeFW*;flM2ya zOQl(8cH>2Ey1{@XRe*f|VptoWhr9rqq}ARKqBR-9*i)^V(k_c?2*qD!Lfp{67sR8z z%tBV%Bdz*Yff6HIh@0lMdb{jFpfCz5@e|sKlc7gOk?GA~$g}~34)=zv+x@m%I`#(P zsKm5ADos1Tt%QcfIyfOB9l+1o;dyq?IU^mXH#nVKoeZ6B3y!!Ln+8`ChmUjYnJMFk zn+1_@Yty<83~An%RF%+m{kM%Obrmi!qW+n|vrQkq5SI6O3+Z{IadYK5wVbJZV^dpI zD!jU#^SoKBxUMj|Ps{uDSlEIdO@v4E@n|aPb4;Nfk!?Qzir9h%EA2uj#3_Q7V(C~p znip0qa89e!ELW%YJed#embP*;RKu#rHJ09>;kE#%{PAGUUH4mHj~=mFusBqIJ4bLk zDKw=s!_>QHg4HZFp!a(5BdD zfn)KQwu=I$7_u@qNY@yli^{>(dK?CV*ZbqI6g<8Kt>(|U*5M-p73=3;y@!b9Z1T%0 z{b%}rzJ4Dbj%P~k7(&VmUtU+mCP(&sTNseL?&@RM=89Jdw8L!j%~NIwtUi2KR41(1 zbp87IS2v*o6H+!h0~9-81Mn(9EJ~yR+*rsrf<_ABS&vm@Vr#{%AP-h2N|&e{f08V! zDr%;=Qp)@c`7?y_)Z>2+%s*zts4`*25cOR$vR!JSFtv22Bnp$IXAz@-dWuEzM7ER_ zCf0|P^j{E_nZ*~d#uzOq%81pOUxvXO?F*Ym>P$wQ?N#TaTlBOotSNV8ylS+pvAN1Q6c6-hrPrN;NfV4MnIK_Ph# z7r$I8RtPe%LnDvnWM05VtCIwSq4Z3cW6M_6BQw1-SRr~-Z&5Y;`n^@GRFf5Ksxr&X zl44hgc344U$}@zcB22WzbinpD(G+VdO0#f1BE2qJ<6x zKC0uRAi~Zjuf_<-lfqOTIIz)f5N!AMv-j=l!Nm`(q|E94-FQsAGCu~- zaqrz>?_F#1Oo^w0Ko+*9^R{QY%0GZX6hEq@Ak!hIlmB?b_f_@r@0~~E{Ir1weF5d=-rE;IvzLTF3s!tYiq(CnHAH)RCd@<)p ze^{hG+i7r*Q@Xh0b85m^DVB!>Pt1#3*S%mcwr9O;o%_*pr$!UCL>ci1)T$8c*;lOJ z`GlezS9lP*KNOaquu9UFwwy0U=(2D%`iXSsYe~q@`5sR=xqhE(MmwQRRzz&~PNesJ z%(9&Rl;(GsHe%FfZa8g-Ut{ukpwxCQMa`m7JCLrarm7}o_xUm#%ivQS$|xS?3&*MIZq(e?A$4eHtcgI1qA)TN>}*DH`gVQBT?n!n{W z1?ST?-P54CNA_|=p!@Ztn(bz|+?SI*{;QL>IU~Jmt7)Y;Xm=c3EKIZ!Zdi4r-~_m( zzSG&yDBySTvtRLNZwx`I#c<|csxsaO-_*5!?DEmWmUoShx|vm!H#zlEFRS1Z^wEU* zSL~+uSqb2^|{`Bq#D_}P%#5$J@fXS;r zeXo_BK8ZJa7~h(hp{`CE8V=88`#?2hg|sGoXI{|OoGX_FcP9J{8kSJ{iJ;*Nm2{cct+6!Vq@_}IHQe}I)#GAV(};Q^TG52h zvJ2%$h-Wbfh^(29M$90DgBQecMu?k?#2kY4#)P()VB2pwJ|hWl-iwv+jFMD;+NAd` zQyrv~A8P?kCzT~2xs@4MB6rF5c%NZo@d1UilxAw?$H9W$YxOIQVh7-nTg>scFt47R z(s6q;=1LS)cm7d2MoxyxWaPe+L>)_U3{VQNz(GREQvVL`mp$#Hu>YR;UqY&vTOlWV z-`UeD*i{LUaeJKaN)lEm!W^p1*PPc%k1nURa$O7jifwBIEm$7GOZZ$*>{}?Bc|kdQ z%EB7^&HHaA-xKu3Qxk6k9t%FoiZ zxP8{MV!n4cMl)<{iKX(xEay24oku*w2`8iD4i;uW{&t@NsVV*s9b4G-Y7Cc%ks&b9 z!wNm+VPZ@m`>EreQMHGc{u2~t@uK5Y7YeVukXhrZo=Vu{RT{XorQiy@(iI&vQT(r$ zS1Mf}_`^R*HFjFiHQ5V!z_r~XEt(jPYjLMMxMm>H`iyn*$1cs41+!3u`u@%Wkr<`e zLWMvDY!u9Uso-kfs_4|MR_GOR!glprO#%GCl@IXP&SjF5`mUCQw=FGH@b z%p9tlK{pb_NHOfrIFxF%8oRLo__;K&olw{>Iy$e`Q`dFwJ;kRBs05~>0D?lo#p8IR z%|1(SLv4->WSUH%G6P3i9$(7$t0Ro0Gn=P+|7n~h6n*Gs2dNr+VRqLp87Mh_0`JNK zv3BjznoFO*{W3k-Z+`P`V-Ol$&4>=O+3c09=h@oSc^Xg>whz*D0tG4etgKG$nskba z7sJu2;SMz;Jk8s{$T5kZo~n#EG=Z6PN`D4~vHM%Ncjm<(G8jJLUpkaIFYKbmy(#@z ztL%tjt@>+lk$9UzGfNN%%#l2vxX6v(A>SC#ceV$cGl0`0)jW4^zl)ikODMR5d9Dbaaz#UG7@b^kSNzQ2;rZ_-kPsINNjmyb)^kpq!TXDL z!|cAejvfOAloaaEYmd-Lpo;E`I!qN&p7`I~LKlaI{w;=K3adzTOIULw(lrwTOU2`A za)oJiWh(73tJ3*(-0v*_1h5;$4F9>TISY!TBT?G&emNSht2#AOn!TYyAIU%ALI)#V zeK#D4J~Q5V#eS-w%-Ru(R_|}v>-~-K3o{mxhecbjxB6<~zUBAJPjD>t78s8WVi@yU z*Ux|V^!eA3qd3bKM_jef>es|;=|mPGL%oR7P;;Qyu1$&J7Q|=>3ka+KFW6C+7~Npx z=u(rw3JR)Q4k*%qy_P*lXZ{@%!9rOq~#l(j8+Zi@zy40|O-7UdYZuo|rtL-`hJ zAdQ)OGq8>x4WdmXYHs1*)yc%|@$Y=|r&h`Zw5cxBmcMB5V2xL_~{mAUxYaPdiY|s8*C@3VhNm*OxJm z2t_S1#`eSRix6fAGn#|P;yTniJ^l5`D$@h@?7MdNaO9GEfzt0VY-fhyR1S<%B&Z$z z`R}p_hRQGoGgljXUN6ZuMCFVARi;Efge>8)_frya!j1P<88l|SWhx)&wlC;lKNo#i zWXrDgAgBdCJTcwev*~;Vui9mYHXR(eW|Kd__E^Em$V({4P4lvFDpY^E!)s9U^HAZv z-4qQ~wuh8L#hrSAAeuu=chV-bK0pa`C{jrPOh6ZIK}4$P81A0~Se6i++`$t7l&|u| zGe3x(DqGG(q!im)!;*FWH7o&AWEZQ>`jc#%r$bczY?n}eXYnY3PMs32c>Jc<1-*B& zHt$*Hj7{HS9P?)s2eYOPdp5>cmZ_^M{ZA>vp2Ds$(gUr$Sf%hm!2Jm)j|4{s)2GT zvi0&PfeXj&ve-tSh*}hFYiO2@OdTAOoHE>IzsY3*N^xD9qnZZzhGVIB%!H8xi zM0r^9gw>7??9kY7Th@{O8z~MgTiOWFZP4V2T5#cPK*U}C ziwB6a5+YKd8%jjND3U1Mqo|bNpl4L+9zOgYLKrwT2Fn1HYzi&z>lR9^HxGwP5GJ>HBn`L$lfTQ-u&)H}88QdTbgCdlbw*n~r-6=Doi#tfCki{?KnRXmq)zn~**P}Q)Tx<_kUSGzj8(4EGUH4)Sx`6fIO*^@K5MQ>!cXMsm0 z%O>PHjE}(a`>`5q=w)h)zq(}Sc5iBWxM!0L)YHAAbd-IGE66nr8B_-eL89Qx<8ID% z^2C6$d>TW#j5|4o_&63P1#*o#+22VnAqf!JOftwM zgX{Grlk+E)YB^uxP6Du&?#LS+m771RCzIwMD-fO&__k?EIPzu*1<0T4(mp^9Gj)mj zeKVNmcKJ#kcmj7f-b)|$*mJJGvmRYlN>#8DW&_p^mlrGA%FCu&w;W5{Z7*+>b~XtK zpA#wIYEYjJ4V@MGp%ftsOkp*I^@A-q+-uc#qg?{qcGKD{9uCL#diyyU!kaS;zF)te zM6>1g&3ohV!YQ{{mt61vfvuc7#-S?dWvYV|F7(VYp&J#lrP-<^@bx{?@7^LOfF7mi z?Ekzou>IiRH|xfX_;^)Tst$!fV|&^&QPQ{?q%*$n4z1M>fEwXgQzG)CHhz5td@h`$ z<{DwCGo<_$l>ska^-YDabysh+A2hw|ov*yA5OzIH3z-*%Op?c85f9q5v_i+`1;Yh3 zL6|q=_kwd#jP$Zjd&trlP_^u~d##+>|MY8VWW;xoJSnkUb~co0m=ZIDECH$ChKeyHdantQh9UMr(@yJ8srseg;Y$ES6)FMQDX$m3c8;DOa zJ+ch4BM0~g$#fc=dE|wQD$L_x%C?<%MD}SdowJ~j6rQac&x4X$N-W8mOkBaXT{htF zsov!hX!WOI>SDPHkIjBLbb7niyR)`+(PTk5B^E60G8wNek`4hot&7BE&uwg$%$OKX z?o*<-{00^j4)|Qwz`{{7YN;stiZ?i_9Q0HcS{lub8++q=VjNhO)YmR)I5;)-@KH`4 zADcNk#eqi6DLaLT48tbE_$GX=kcSG4pqV1XRkGr zZlArmDSTL}KuDx$b%{+AA5|s9Gnz=T(szsgJJxKg26R-oW)mf;rDt}1KxzER6XLX| z?nu0-M7CnTh+I5+BvC+qatFQ$7%s=wY!o}WkK4-c25E@u`od2T1So9i|Ke&WX;b4odv@gHB4Y}ZUUf$~B=`gR_ z*`-ku|K%GK1vSU+U{dJ0s?|a2rXj5;MdhWv@ipK0{A}Bz0TO_bD@7Gt9LNilCI$ZF z33t!>fYL_2^bumSzQl6-r(~TiV(7%w&HNMZ1>C`%`QaP>ndv#>d>6P8Sa4SIJ8cWNHixgIqbrdD)fv|9HYEEm?Ih^FFR zKf~t2K(&A@QJEiMs^F(OD|z%eR{~&~6xJA%k9mRtj~M}bO$O&SYK{E`^k(RuEW?7* zVs0m3GN8QXNClcBo#fNP!dL^>Jl>7QjpU*3Ad5om_`9bfoHuLgs3$E{AG>Pz!wyW)M#Zxqm5?)toSd9z;Hbov_vyAQg2;DPv+b z3jZRD9~i&g%=~?-NlPK|!{i#%5(ZW`-iz%c{yqf!W8J$^xB3b}5Y<-ak5k|@@rPU- z-DG-Pt<7L(X!9oT{w7Oi9o!OGwCo(cq?JFO5Z8t#M=?iMTm<*xeQEyd-&-s4X=ND1 z`^HwRd?N-!6`E@q%%a%3q;VJU4JX%3FrlPbRt3)_C1B8qI>-SMhr%fFP3D8TILd9GAg++(!=g-73ZQ7gne0ux)m-)}vj~?Y4 zK`qJPhN$<6rX~2@qUjlT-oCJ+LVkxPdUKhW;(ifdjyI|5t~u7k>3OCR9M&+ zJ#6mE3`Fq3YXPXXOPJNbvDff!+4~+mW}pS6$_G-cEk{_wPbEvzoj^4DWR0 zC{Ng1FUP=uZ|Zr`&I)#hnKH*5Jr3$UVneK%9QX8YJ1SbFEL<_6O+0w+%9q3t6kd+? zCms4I!lj#cJVt2tj&uyxT`-lDX0blv(QRbl^nHhIMaz>~xjE}Y0jj>JJ54W~g%y_mbqQz(*bi?dx| zZE{_vAAa& zk{KoRFUH|FqoMyz>2e_(8T+hy#;=c%-W?6rpWN$yI(hx)@BaPbU%#v5iBu8A3T2$G z?b2z~^n+tl|L~_j{`6lykG%@%M6*t=A%do{e*7(z08i|BrD5Ku2_g?{#5N;iMryW*N!JM+48TYaX)1n|0S9Cx*>P=xc`)6@S}Z9kZU)pY^T(@nFjg*hCjzbdqAU^l zU`%-pj)*iv3Bm$I3FQ~BI4~9+i56R4%|d+2pV?+h!KB=Z49{OWk`V2V7VyWW?+zYr z$X?8(al*Hm=oA-dqI)2pl`EMVhvmn|KRlg$OL2i0&-#~>H#cTb5YPI3T6y5{k?DA= z&lEpy<4LVytC{+t=_;Kj^~Yw7)SKqjoNdotnQM= zlTsL-ww~B}zz#DVubQUbyNpANj)H><@|xzA**lL9DcRU*%jouFHCQ9`S#t$lkWT|3 z+SK+Ny?Z?hXO7p&xER!8MFE|D7>l#HkCze$v4h~f&BaV{5187%Mh=I8wgiGd7)nrh zuDc?2)~&~{^5~A$njzEJi`awMsB_UvUvJeMl#4)iz&#=HENqQURR-q4MY-H}RGqKP zOgk|7+Z97I~@$v1r#suzo?K7}-Ud3Eul(1M&?H(nsr zAJQxyPPP=A-9^?jxgxMU{pHH^%z9n}Cr&?{G2JNd{bap*94_WaCveyGQvKaEcizmp zk(SEY)hQ?Il_}bYb!*NmCSm2ePH|dVi{DJeu>xsOD(#N& zvcOJb8tfJ7Q&U%;BjVN>9tSTEM+g_c3IQa{R(hmmU!Eg+QSr73|hl#+Q>YW?-oZwAbk9*~dmj{1j|1>Q=Da#&qiHm3#ftWJ~v3 zbjL5-ufL9gs#w^r?cv_U zl5C@zdOaDbS;8d$y|fn0ZQ)_oppFIU{EQVz_Za~UY!E(j{Cul$*J{2mGQl@-8jA;{Eliy zYSoD}Vz@<@uX2s>jt6l~O?MCL;ev4eQybO!+Hnt}%&GSbE-6H)tz2`~ zOuLzgKxZB2{3_R7NSiE~&rz1uj>3bf75QD-4Q6~*s8U=uJH{_1^M0%vG;+9OB%4({yiaHyD@NKuZBil@LJ(HDlX1wIbyI4n@tmV}eaN02y zbsfXWSz$?V@3Zo#Ldmeix2Ee9^TC@bqwNV@@&+9U%dVYkXj-!$vkBAF{32$*$~%j; zMEcEa4XL?-ALFiaf35OU14Zy0a5Z;0(C(s&jwe zt46v%mdu_md>!>Nd?Q1 zNV%UNKwfud1&N;vYi1O02h2rvtG9G2Y!=<5t&lNEk2kYlxT<#U55gN{fBpeN~_jgU6hno$Zd79Mh@_}H%qOCQXM>XA;|uy3A~Ad z-{OU8MPVY?1YDb1AsbE7%O(A=q6mMAlhZveC>+danmPNQ@r;I}U{Vz@+a?G2xG)jiu%)0CmWuU@B3YFG3Y6xCTMXqED~UVM_5Hv==?C(DsQJ$?62Ftfkr9 zLuxno{kLvy=}}$L^lo&Js^;-)Fp!^B9myz=$9*ApT_82Gdc&ymA_D{oMSU|dfS)7# z4Ct599Ck{i9hsuoQnM-aHdz|1Ti}Iwr&(wwLdh(wk|6?0;n^d5fPd=FZr*ArNL*p- zY!Rx3-V&{@4?C7JmMH&=;xE3OjlMX`lmFO!Pb(6L6j17*U$DbB)iE}9m$Mk``Hfkf z8A;3#Jk|WrRk@t7+8%2kVr)S0y-1T~eIzL@z4IHpg&hhB2ONHD^oN;`V`{~RUF^ux zY-3-6>dt3t`usS!pC{@Epr>fISR$|h>A%%JTX?-k`k!(c336_$lc8B=lOK;M@!8Tj4ln&0nnuXHs>4^L}wsiF7a4Mi!HOrvIP&KDj;lY8ruG%kN-(1I1 zntrQB#5t;;vr>o+!)o2>2h!fU1c+_jrQpQ)62c=inb4FMq*|}X)-Y&K(|^hXofSIc zfdXk_lk|s-N_3#O0Xu+=hkV5VGMtx`8CwV))a#Zg@Vsi)$3uYe9j{^8kxQ*v*TZ0d z(d;rL9XTIGx#&Ll((7NCJnX`uCW8h(4OGYlw=#H6kg1Gp(HRJg-x`dEXr>{LVQF`- zKG^7yDtfMv#Nx8;>Cap6d9KZhfXP&&Ub}-ZMMJ?B{Zv!0ztNq$POR+*X`D>Y+5)cw z`I|bT3oxAf|KP)tU4=_FKud*<_!theG%H`%j|kAgAk3K6{OyGZ^q$o=6h@UAF=@jl zoVVx$R7CHiaQ61qJ6eEE0O2q{+=cKo9(5UkDn(mQphjGu$e!Rx@|!ZA3qloyPJ!X@ z!pI6?+DU!BLUTKv&mZa1a8@(%a%m&6 zC|4^=8pm%7vz*3jY46Tzfrz9&&n2o@{4V&kEHUZb#S8e`i9e2htfOq#L0Oa$O| zRjp4_((h+nh_<)3$7Q}#j9m$kgd#}$;j=&-m|52#6qNyjPyB5&ZL4L>H=$+k${{+*SZnx;C=Hc@_z$5unl6{Z=0PVZ;VTY=GATlxWP-)QC435O-J01 z>5~v)=OwK)h1tuxe*X39CVXj}-v>y)y+2=G2)=ifTgtMoX>4|=W*UFVJ0MW~?)!@{ zDx^gBoxdxp?8UQp<|(QzOQ8 zN$+YcG{rizEK`BZK@xpD*CF@SXEqf3kXkYsIzqP;8*#4Wta_$=DkN}AiE%UPL*3Hn zRi(uw=TS_>JaUwn3Z%pDl>i7i=WY~Du90)CZmKju^{~MIe^Z=U!p~C1qv8jnDSNkfhShaEKbV;ySz!Z#2Xfi>E{ABgZ$mq#;s`oR8t@PcsBE@P1f}lE$x;^#sEb z8r^WqV=Wz%oJJmB7vbpC5n?lxPmN?~M?`g(RDs z(Mx64$=>sNl=c!w28ox3%wHQ>ys5*vP#G=sP{w_-4S;5I7Y*Td3MhhihFCT%{MTrT zLKvlbPkfgtVmO;plQYR#=;(>HTx?piFLtFF+g5xsO5z0Z?QAyE*>r78Q=FKrD?*aV zMpvdPG1J~T%hi?6lZ;u0B9By%Sq#li1?bOgQl9)oZ zl%!5`K#F%r<7-A&F78E}xk}9rBTqzplFe(MPtFI`pvO-Pv7`y%j_GY%9H`XC%#>EB zAOw{LKtefyQ`@GrU^{A^ai~)$s_4Z&uhVIUrv+-jy2ndO3E?s#a2%kOwLyinG%yme zCL6_(K|{DYLnAY&YzRSnY?}1E%;VlIV!@K_8y$0;fC0h&`8yOAMkqd^6-Lq z%`KVqrhXS)!z{)ZYjrdbQ;E?~iN+)VvgW6n4btdU+^X-l0=evpDDe;Kj4rD+$&tEv`xOBLlQ6h42gqxxXl^li}!`tr?t z5hF{9fnRQKU%#JCeu5H4nzOwei3LObpk(;jKNoTbxwC1am%ugLTcCD0rT3>kX-2IJ zu~_&S=%YM1)Hf4vP?~8VD`g=VdlF0?R2GABOA=)}@-|R)q_CRHLYs~Rp|7fUhIlwB z6t>7p>iI$>g+bip#~M*D#t0+x3LEqDsWm|Pziy${Z>oHJW=cn9&oQ%a;K*>=P&*C_ zZwpddruP;`lhAP!q{JoHbkgk%m!wX6u$bwjvAI--~4OZEDSJ)EM2pG{D!{hf#TMJq4ltg&EU{(@FnzY+$p04uy9Kc{4T!96vhox=o^wHU~aV(0iMevgaiV-fEy#tEyZ@Ew@ta zM(q$J%jLMDSyj6*4koXKbJ9@AKpVe9)BxPrrryor+SK<*X=j(wlL;MW{4R#-zdQ*|-u8lM3Ata^k6O&)kA^cv%QKr-wNz;>yi(_Q<`N>k@R@!gb?@hCT z?Bu9*M#O*Lx%bK*m8a3)>O(hPs>C(?kfPUx)lZgIaG9V0uG_pLL(;^?qasbPZxJfS zm5N~$5-^`1I_kIR*y^XLxt#NG94J>f(#yzv&B9f)%i;c%xt3=0eA_W-!v{JsSD&ut z)2x2MwcrX|eOv7pY_S4zw?;_xKmU_cd~i958JYdh|9mDwBMaG113|@DHQn!%o~d5> zPk+v=zguHYVsS8T5X(cv&AcQdV%~-8H?0gNtZgo7-JZdSi+TpjU33N1u8SO*~ zdR^9Y>!D!9UBzYV*%fFx9rqt9Qhcg*Y%&|&=xvp<6CADKfd}?Y@7mo2i#Dx^14-*n z=yH;YfnN}{NSu!WEgNWSkDWb>I2HUknUaxx zD!n;7-TffP74xBMm{@c!x>?*0L+~`%IC8T3SWZ7(Y9UlT0f1BS8Xu$^N!Pk{2AnPc zI6(DPfXbi4YKR33GL(S>c!m?l~zy3ME`8leO^HxZ&{a5QK|ZgFvq%SXL) zV@G^WBjeNFB!fS8TR<9@hibj{1(|UPqgX~raR~4OPn&kOnob-jINnJZaCPj>uuGXF zO)S#o|B7u4EtIr_)qi8f0XHepl0W|W?YrWBtw^m0`_U`6(@E)UJE8JEJ%E4i#{O>_ zGn<<>$9zZfYK7GA6jrSd=LdR>LsvEnahRqkMn&Byr(27RFz3Tj$Jt1(qM+MXr~;Lr zT5X%fFai%?Q>OCVnn=r+lb?!~zCF)N2y`l{(VHg!ijni7FM4lrztwVisBIjkC75Ea zHNN%U+vf^&eqB;G{`FFk2D$px zsH-m}lA^_aM-V`98M;Ab7Lg#-RCL-hmd-FiOw>Z|%h{~f82Lcg5Cv&yFEFrWPe^b9 zBVvGTAv5CQ#`<%5^)zs^YF*kV7v8wy8MW}Bic6ZT0G`jr2M9bi-&R_G6eKd}sDE|j zUP)p&8uR8u#2Zx-eSu<#4iqk&QYyt{C)Y6LaX=X}&$sNKBPl;wJ9@5n;_j3~>3xlg z`K~i~yl&1kEG0uTRs|ah$P8yDKao-eddLi z#@)R$AmYASSTm-0Yo-D&N(Hrs6$?OF<0QX&UwudmBg~^rkPgRt0Wb}KCHH#_o*z=54eRy(tGtbn>bD`JmPS#v>WGv z{!W}a{6A?9HERW0ize;!I{_JbriGyUEQ-*aAyPZ-a%t)i`!SsA zI-IDAqIt+~>1)&~B?}K{qs=b^F2mp0=R86ngMMQI@RxZ9LOwA ze&!zdWoeP>p0y@TOx}bF$J={cuaQo1Hg~L}<&|#g3;ut;2YwsG7>ns0X;Xkg$1o#L zho6Xdpfmi5UmEY8sYqrqjCW^ulULD-Qa<*+n?sRO)?zXQL-^HRD)n18#2r1i-(pz6 z(;0*5<87u(L{p}jM#Z(D7%>G$&;(Y6U(FpwL67}I{Ffm3ZSo(-C&cw;QdhrCUZ z(N2xcQzp69sKSULWclLFdGhUR7K)(-<5s zO9@B7`DL4S<+)|h=IA}3*2BgQuuN@L5yM;SSp~w*o1!#-s?h+F7@|?QTK~Qp&!rR~ z2e@%Ul=R6T7ESS9J#bQ8wGgZ7GfMq$knCDl`j;2~`V?G|qWb^!)3iykTUeHcCeLjS zMW%F+XbBMe$0!J2O594QFX-r*L$ZSvyKgo3aSWAN3j(f#S%*Mw%<6VK4&#ZwwN1R_ zLx_8S1=t=y<9fpF`D&Wu2U)=K7Mc%@u@}*F zLkLF$;ky;q1!3{7`4Bh}JLveOb=S64h!tL3bvikxq@gPRU*GaV)NaZ!YwD!3bVX6v zy%P}_pxk9q45qF0ymRztS<#RW4%!OYA8MH!$CM_@LCyQx`RB2jNp%`D+%i6^z(mM6-%UVI}g^h-opLn%oC9 z-51Q?e5Vb&A*d@Xr=y}_;df(ift5LENKY)3#S7PxzEaMNuz_a7<2${w(I*UcyMcu+e*LLKf z;5Y~4$P%W|TmQ$s%G9D7sy(Dgw)j4zKmYXh_0Qp6pc3H=AU`(EN)FGHHRYGxlcgvW zr3b&_mIqeR`aG#Aij-#5Roa-KX!6m#VkYhgC~7KV-~Ejd*be*dP|3I*YsT2^Rw7Ts z4bT-Z->-De^~Wvu`!wZ8#$X#LuBdh7g2<4*M#B1Z*X^0OX8YJ>$NuP9@>|TPwUX$Z zM752+R6bYC-*Qo7fixyH$Qsn5OPSa8hfVdNxxo(iwsT>QFRiS{@c-K4;@c;;-@JG> zNqf_cCDyjJng|%0h4ymNPJOVt;~i>@u;y4=e^to>>J}_+@4G#Pm`=S?e4mjBf%o%{ z8q!*y8<|556mTYVsQaMbv=q!9Ut`7A@No@!>Agc=fSlVE{x_vQj!qx1pl3xr)CD_MkV3@0S z6R*3hWrv4N3$$|9M*yBJe%@OTniOU8Fg%EPb#`OYxY)5HhISd!H5k^;^9IS!GJpb< zIhqIMgPF91moi{9+fkwlSYuy6fJ$%!=NHo^Vs6hIsoG7`vMSHQrXliU+sO4s--?~; ztJva|#<7ZXR%*;o5PBFK6ewxX_edZ6_SKs&DCxu@xuYFJLJPZ|K0sp7HuZ@u`JI}hd*N#0g zCV=DE#Dv<(Cf#jU*Ua?nu6O;B@_hA7dv|u0?XkyZv&6TmZgtxLqegw$^-uHRl_ndR9XV#ub zOUChzbarODZ`J)e=RNPo^FEJ!)a0u*&$1dhhcWOgvi6nh5fP$9?lpydWrdf1H5zLn zg)mYYEw=PJd!^p4tk{JCPvrYQQXf_l>}`O_M*(TyJ}dN7?0pF&-shf@*y>hSG1_p1 z+H?q~MiCK#Cs;nQ`%9y=}?CNf|)W1HJ%aQt2VIHVp@20xduBa{LBJ_r_6gfw^3 zun?yN62+6p%t@OJm#rVAxLHk51yYx!M5K3Ejx3d}RX~%q-e`(W1HraL7S_x{q;DeJ zx=kHys#*pBlm5(0SD|v*>e=^eb9exrcNElE_Y>kt4Be|qErwn8 zkYgo?v7?|`8_0=cdr=gG4^Yt-n)ZQXEN^eOjv@-5H(3|t+O=@cbf)!xcfv%|HK98^ z7ZZCRaw=nQlX?(HMUHN%c?8Huy%vCq~?yu=*`;8mphX!e=;A%Eokcyii#jcmHT&DOrrg*KBIihPZU*z)p z-S%H(Dzx|zeBVwjF*#Y>;}rsE)W5UiVHa=xAUP-Yxd?IESOlz!Y=<2!n-Pc$3A2=blQ-l(2;8s|6&ypa$}&Zj>4BrpGzS%^Z4jG;ptuD9C5` zV8J8LAf7PG!e07{EGP14Hjp4#sg2%9&a?7#wz?(c3!F}C66!BZ=~SYZGBufT9whpG6xd;38sg1V3#xG)??LB7WN2yT>d9UJObHhDXpmz<4zy z|Byivh}u~Zg_b@!pQ;HjULG{^Li)=KPRNI{nDKHwA`ZyqM0FF@*E)vsn{pi-6=tI% zQJS+0C}hA%7L26^*G@euEwIm&UV&PSMhBJ98$MX=?CF<$8eiR&|9v0mh@bEUV;~Ns zMRnyYt8kMX85#v&IP4*;A{f8WqXep?k{S}XLIaUu7Re#f@06>pZ^xKeweM_hv}l3- z3;S2PSP{_b(g~a@kx0rcZinEKe%eOsfNOc6mvZ?k1q_l^{!Y#snHjO@HV1gM!rUtR za6~2FoBsh@-jTb9)?Wde!mORSp`|Uwy$&lM9S+T&smxab(AAf$*g2L;=Ex0d@ufq6 zY6;>zYWvhjo|=u|zo|~EQQ-fblB~$zZ*)%)Ij6WN7j{*e13+u^i)znW;+k}!B!p>k z8;FXsBXvh!u8%`9qjUtMld!V6GG)~|J#I)7uM8vN@*Nam<{<+L?A&Sdx2+pPTX`A05^jgXy;p)d2GW zdo50EweHiVabyHVt~}>uZxi!)0A?Isqb4k-#Pwb@MpdP{#8&CE&_X~pv(1TDbru>|0rMK+z0Vwsi2#=&a)C>#Ok+RWS#ZWmq zJ&BGzkO|21+mBl*EoVRnQWCgm1?o|tXg1oEn61QS=YEZ8J_ImlBrEZ~J77l`Eoi-x zAGS0=X=ZsuURQ%=C!Kz13|eAqMfRSp<({mFB1B9X_xWvmdJEy-IN=~-5uBsSRKIlQ zu76J&q6U0HEG2@70}FnA0$RGxSy)lo=3sc<>d?pJBu1D*L)`%;TrLk zt>a!d()rZc!VXQ4skSM>>BGP{G@3?1f_vLB2@1jVgbsa)gH7%`bj8Ql$OVb)cfm%c zL*of_^8EELUqkmq*88}hRXNfU7K#4eo@7+c#JL-_$$0a%jtB7TP@%8O_-VG2!=fO)79 zOtgj75rbml4ro_ZO1ZbKHhRqWn=2rH$>ViLsFeeyFAwe0$GwXRbd~Gf*F-;N*~Qta zaO}8PpVp@iXM_p2hGvVIm$$59j6y@`f|cDVDfMCBnz>{K1A3H;0#;_F3^}sRY3^m_ z5Ux-?v)|#;6oCL97L*rCO7Li`v6Sy~v2`A=wsI=3dI|lPWh~cGf=aKzI8>cwfx%OI zqza(!kj_YMQw{vV>MmeDoJ3QrCatY`E!*yb;ZlJH24vjea$#6;?H)lhNORP-_|;Xo-OdsRXTtt?r-#stJh$ zM2N+45foSVJlE5`(fFP6D6j?4DY2TVDaf;5hM5bw>eYPIg5YmI-8>C%2(&o}>}RA% zw}kDuh>8Bw>U1@$NpYGBGQy3p=D)ieu1^q(sn3=!0whcW96w%=Bz*nCD=_RC-Yn(3_leAQM)ipf zm3NM)Ld0qPKmr3t%oGehsc zFAD|gl`$N^UX7?7BCe6*Nd*dC~jFC^{K`$T6q9S9U7Nb1Hy z1QO1HKIC~t;XrG^6M(FI;t4^{SznP}o2L5M5N4?hFo|1XJ>-KEF=p+sG_M}?*iO5Z z1i~Q1Ic7y?$`)Z%Xmnoje^|!Y>pta{^zrOX(8)Y?`CS9%05Gp+w=Fy&j^z5Nq4i-) z<-Eh~XbPR+R}Fl~)*VOoLo_T^5#VA~F4W&&_B^lmCx-&8bB1>t44@WhuB1e836ZwW z$0Va1axELFMqhwR%!2ElsB*L?cqXxmV%i2xFChULk63Fza1}i5dIkS$cY1rzg3s=L z_{|jgb0^TX3cb$MB*|@(zw~D9ZO;qSk3t$`toEd-O#P_>VRc0x$v$6MCNN9Q@YXSlX(g3;a=!jG|6YST9jnNWY@mK?hqL^ zvq@*i2}EvILb86lowMi8!nAbQRn@2*64^BokyPPMlhSU zNcDU5c$`y^RI?>wyc-qmWu9>VHg-lZ%e~(PZdqUsRdB8IV)LKM(*gOZ-tTq!jxqVL z@qT)nS1w=LGKN_VoM*>Q$mO_Uwq_EF?t)QTYE6WY!A(KL&TMMWL@)2kUE^IqV!*i) zBm^m#=azHRAj<>#NN#)@2r%-FE>8^nyHM%Y#4b$pFaQ9UKtS17*TTf}6MLo~lUQG0 zJ#q#1Y_`qzk)Ta+9gJZUzNNJ}Ol+8E(!jJcC4@qIPQ9)D2$jL`jzVeAfrZM|O*pPq za`=L_ZLtx&k7gLxQK-bRnsC{8=}g=8dyiW>>2RfCTfnHz*v3rXm+mRn(6@v}kisL|4P)&D{EE8`*4zeM3DBUJ7pjNe^nb(G-MB`y zgY$j_LvUD&cj$7Rp)pc!Gx>@QuK-%h0KfnV{dY01Sr_w=I5usf^H7QHRy=9h*lXSk z=(S^-Iy4eAVY@@g6sStei|F)H=eDjwO{|kZUEFm(bvazt|b~_wu4|ruY zNR*fsD)~TRj}T~Eq3BSfCpXS1>1e;FtW(tzZaIBL0-;xTofW$|SRuOG?pSBc=?#-( zlh+EPY29|bMay^0J5p3`1@t7K%yw?M_xAZ_(Dz~e!H*L$-s(kaVTrWfu&;0pb5j+k z&pS5eG0%!>3q>rHf)Tc`9Gtwfu#Uy&xva?)%8WTS3{1z~u;azRoN=c zT+%&XyhOLOIxF~DMPFR7`GWFH%oJj7%B0EWtwGw|YM+Ne78It>9Jm!|R_D@33%=wdXj zDMcTq_Oy&;g>m`1cvVej8~FavZ>*EJ(_FjOaBY#N?IJ04j%DFCz+u0zZgUnVkb$v> zS>uNcnssX?dP7MU6c=bJ!0-u?yRruwBwQwwlKP2WqJk?QsedBD%3P5l%fL0%B(qQV zT8TF5h8t!mRG1Qy<3#vM7U<0zd5*+FKc_9VYveeU@&K!iH?H6-7%t22oo-k6~EGHfvc z*iu4h{&s2I(8l3~6-K~3fiCJ_H6<}(Oh6s1g0zND2e#iJ!f{1oS~)I( zILke~3#W@4P2$KTNfeb>Xlv3j`2J%&L~7*CZX;u*ax8JM=93vR;&9Cav-|k?}$YPB0x}W{Nwx=BZk1Zd5|50kr1; zzJdmIXg{a&9;}I8D)iQwpb@85jUgZsD~bz`72a2P9|06mm$A*siEoXS33D`No_roU zkBck4sDfSBh%(vVcWL3chnVqj8N5Irj*dFzCNyRevO{fvi9iXp3pB%ls28RxokC5D zBT8PXiBrV)>VYheJoyH#I^$i)2KlqYDLAbjWMrP5mosB>5 zzUe~-()>PNaNQV_2@k!kts`>iFq#rrQKmEfvvZWi+roNa3<079$94f|^qi(L%Fg9r z0&8qhstpq4z^-(s(hOOEoP|6Q%D-vuCNPl`AJ1T}(sw3vIzNb6mPmLprw6iFjb^ew zfab94fSzg~-!L9{E1yl&_iQ}B&F#UBP0&nWq~77w>rMe9oCeZTVFebp~68I{kq{oXz`Cdj4`wV#dd9I zy44InPlcj1Sb8-24_d?t`@}q|(wU^6&ZWhw(RtYh5kx)0WEP#$Lf$1d`aVGtR&FJS zf=g!rCPIbEx{98N-whD-%;2Qp-!f!pujel_7#eAdw&utYSCDHM}a@Tt~7yB{>UuCOhGb5g+(^B3uga4P$a)s4x{QgWZJSIeM(sUI|O zIv(?y8&=wybwM3Vv8!9BB27H8`aICXIojMAoZmujxy`+}bne{F+1}Ba+9}C`%$G}; zdU?$sJ}OISmJw6jyK!jm0bL97*!BmP9tioE=B=CJWwLKzC+%pIvMgH0&Bz%sHL?8;;z268gdt}2TG zB#Z9HHG(2(KhjU@2y(Zg29;bk^$OHx(dTslpxpTx7{9Q&Tjf0{3lOU}=v@gaRsOX> z(SW}1h-rxME;iXEppSmlRMw$`INK50njM>V@NFrwDxWr#V{}-k778fdW{M)^C>S|wd>9jOPq z2KYK?cORqP-4Az>0GP!^))Wj*%CoF0!Z4$6=bbKn^@$J>$97q46IwyzT)g%EkVc~ngdd)P2DgRXS~*Qv0%ccs(k|Hs=Xp5;Nztj`VZu}L zPga%!A)|!a&`C_lL|5UqJ$7)#RCPc4t8F=FI}@@XHb0yn2BK9j8(<_byPlW|;Dn}Q z3w<@txnH}dhGKq z+91>wkr*?elvmODB+M7HR5kfF_fb)?Z^Fw&TP)oVTbr1;>f?p!)LJtNau8lDZGr^v zk;%gb{Y1PZ7x8tI8tLh%Xfa!cTVd`-uX7SHJHXC+B1q%0W5b)GYSpnsRNO2z0HT_h zy#Rk6$U4}Qf+vaAeI$AQTPj;PlrV6}lZ}3j1_idV^Wa6k+ z6&(SxqZm0ArW&79(dM>R;aHQDYJi@-%| z1!jL0qq^Y+76OGvfwYs5@i3$lJ<8C*K}iVu|JG$lv~*!Fr9*8`ad=X`I4e2UJ9Wev zT3Mi8SDtmZs^`qaQ~+?B)vnvU3|z_fCFlv@-8jdkwO1N<0A{)F$Ob%2Qy3G+N>aix z&26M!VN9E}79pyE=K(G#<-)r0I|h7ss>0AZBqL<%fO_|&4_dWaGZ4H)uw*ljsiCl} zDtS&F8PAT(#+4T5Ht=Y<-Im)NNS%whr|lulzG1x8w5?eP~i35PYPvO_k#abf2P z?{U-rIp5nFSO!oI^M1N%plc2Ba&muULiRU!qEo>*dRRPE*nOv?%W7L%v_NCGc5_5) zYUzsfja${EF`#N|Rh4pz)iR-E62mIZ)Y#%p&KTK>>t1O*y~%_cQdSZ7I*Ev<0Omk3fqA2wQFxTfIwy{htPxkmG$>FVOB#n}F98KKvJj+oS-AA3>@exD z)au)wB^1*%M4QwS<{j81Q=1Jti#MWZGB$9BIvX;qBl)92bUz7 z7%!cK$O;i5*{S(6rmsS3EuB82nZ${~MauAJU&fEUF3Y|t;}fsXvNydU%YIG9J08ih ze=Fn68?)?R%6Q+Kvg{wpcrJu*J^r?Tun%J|6J z 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 z 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

^;N1v|C-ne|?RQq3CoGx4 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�hIWi`)5|wsg2M2 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�CAFm93j}5-9d=( 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 z z!ScC)3k^5M57uIS^k`5BF7*d$Nn0fTrrYV|VEVac5ytgKz1iGyH&CxG1&&HPWEv2Nz<_{=t@u6iKdAK$^o)+PyMb$wqL} z|B#rFYp5J(ge9~Jw*Yn_*=@YgyjJ#n7@Uh503!AjtN#5E?JrlP4USU5XfE#X@4nS1aqe_%!ms&~PYXy|i_<-Uw@>7G2w)6`oRIv7vESw_f9H32r0ZXT8H3NGKbH zwa3QuU~joAdh}W$(Vczi3e|D8OS54%3hlPn@)3n0LUu6dtHzF{KezQfhuJxQ=Ar=9 z$NL;k80%S|n@(DwP%t0VIn3~M7bwhTaG%h+H$XqZZRB;*v1Ekj`*!Th`~n$-AFu%3vYM<>*TnN`+Iq~2=2=F>8ZOwL zxU=9=grpW_&R@_}lAFlv_5Zy7%j}2JccDsi^Js>GyZX+J&Wp1G$Vg06%$FztKl>^u zOKv~w%;9AUjF6Qh2`j)v)}?k8g1azXwZ9l>Q>AXZQfJcli*)Of2n=DaI4lP816}W; zua=GT)zck>PD5w7*f;{i%iKFNexTwG`Iyh`SpD_h2q0}lyJLFXA*%#y$)se=r6iV^ zsawxpa_j`^(`o9Uzn!C2lQRsVT^bB)56>uI3C)Cu{;la;6uw}wCD_D=vKdZNl}je@ zM!KXseG!7ckV2=t9Jl+rbZf;*!Ex}RK6z`jNgTJ^$)~f6n>!=i#?K0`Y4uvu<9g>? zZX=Y-&TDB@Xl_>-Q9#;%GaGiO%P=5Cq!%G&_*bZ5uVU0~7q97ZYBD zA(BwIvwX0@I9NA$ubjYg2$WZwfq?>QIF)q^Lo(Lf;f8WD*={0cSp_-V_`7qmv|B2` z;3?iw-)w2m>Q&k3LESQCUkw)y-HCm8QD^YCY49MRYid?F()>YyZjuASE zuYV2O^@l;xOk1~Y6-HzTRTt*37K-_CXXrBz*?)8+KOH*J$IuDG^J<`D&zz*2Z7vQu z#B^$yUC8L_Hcq~^DXu|LPZ4`CLm8*VU&lfDqj zT*AzTiu=A6;7Y{?#pgNFM>JFFUx7i#Vo2)m~#`J>~Do zTRjfhy!Hy`{BuO}#Rv6<#SRyNPpuGtc{V;#vGamYFtQ5ut+M)q-PESf#w2C?icm61 zX)Y+Q&=($1B!r0tV(BGuqP5|D{IyM#U`X!UuCPrIkg64swxj3nHLaY%Y_^q?Jq&ne z19+Ab;f-CRq_#1zqpL4FB9c%-Z+&1sxik4>vSIDzGNoC>s$O3_NQ|uMxCmL->;z3a zmEse+fkHe!=^1m1-78y%skU#h-6aCR4z$`W@(a=maBN0x#Z8n8eoRN#WI}_L)#@&u0wix;ScrabW&3NORnP3$2 zfUbsjO>nM#F4`1@v4Cp@3pVUEd6U9~GJH6bq74mxK3avC+pOrIt%F>{jNFQs2&no) z2SZJO9(q}6DiI~DbDs7bc++4tTQE^FFZm2q1p%cp3~KUQVx8s~{Drg|pS{6R@Q7Wo zYF9rxQ-zD4@FM5BfjVY0#GzBnZcYBE>q}fy_&6`*(-5o6@yh>6o&1+)U#@?RDt&qn zt6z30EBOMJh%R51uJ(0$!#4v2dD6CnojrxSOK6tVc*^rPPEqRw$=vbGdiEzRdN?v< z0q>o`4%^F+VJfEApfA|FRI9G6(D4MOE#EyGyS_`4HfNl`t^I5*Ec8|Z@?}V5qcylEV zP_C^+y9Ixph3u}UUg`*`M+Cs^9PX|5V+C%f_{g}TIh0@aX5-%KN_Sr1%srGuC%VO& zoJyC?pf%4G#MrN&z7*oQXXg?^k;`A-t*eMJhHcu1FJOHD(e-OoS!#wa6{|mN!ZgST zy22>@+Pl=H2MsdvOE2ivaw*uENil;*8-_{C&wJH%E7z{Hz8kY9-d#{Z^ z>bM3p|83kY)QGM>F2{jcN6AOV5?Akm+Pt1z&tuD9(gfBH^-j+pKzJR)1-$c)KP+eh9x8lV`q=CjV@vIzRVUqa~Ux!_*MZ zhR&_>ro9@R_BSkK=gOhjdq0VLtg}&c>*I;*(AFAq_K+$fp;t?@Eby{TF>y;;TDVTw zInM3`;B%D%YsPP!gp5mb0AYdhP|;CH-yYm@hSlt9?4v~Q`Lf%R$PCH{&25UTNlc9+ zldu#7%q#q3TL>f112ku8CCz=dR-dHCaF*{%@3Jw4!miKyn78$INfzLnz~VQis4LyEoq{QAD3=o%`ZhIIvGzcIr4AL?;=llN74O)?x( z>qzU+fI7F`Y$_*Vmk~dmD-WEuanDIF-b*%)Ik&yCvr%(t>-0+(YVE|={oA()`K(Za z2*C5G%m@Z|RV)@9CyPc(B_=NBW3RX_P5r9BX(Uy%r<9#NE*5rnirA8-qw{fLT0^&N zajgjMy|wg(S%Y9h(Oi`%aoRXcOPpq>24ytS*{wlq^ZOsm1wco>X1KS-I zC955UUb;yLBNNY%8hY-8c5bYDeBWGTB!Bn`8v1XXE$uZhYx3*gPsqdMVK9a^S02`r!`D*Fh1_I+g)j0sHKkc~QHh4->_S=9<7W?JT3NLw4k8qcS)mGNqL z)LTgzQNY%1dyKQ@fH^aPS%FAgFg=cj{L{yr{Gw>o?CT`2OmL+lc(p^F*PZ@v2RI@V z_&DT)+hA|5)ZI3-76%Q|d|dB&7gm)7^+P$F3k zST8VapHq}z#+fZdcci?+jq4a6W+sx0)ri(vxUl+2)=Kkc9WpVidaY(xxu`oBV}J-= z(0}=zSGiysSF=f6?HK%lY^+3HG`-up2)&pf#6ZgZ$e0AeP#S>}10`q%8CVbQ zotMUS^U^&JPj>P*p$2u27OmCZIMnXVkOEG)`LV7narffhGR|_xqlrRV8`I)6B4a&_ z+k+EGl%1inCFOTJ=*osTM4(q2Djl1o7;SaZD!=d^eP`m=#x%y15-ZV4H1-7e^rg#HM{ye06##$zc*>tH5a#IQB1@JnqJM|I#lT_c#IRyN?7<$O&9iYc6-E- zZV8J%qe1_?3dW3`t>g5+y_0CI8Haa~4j9F}e40&GZ?G=hDn($PEV)1?k{C+~P!~M% zyfXeAQHlpcA1XP(`r83M!X7h%Gf$lfW{R*{r9w%gNjb zs+p0tz4!T87ezIs;MaUB6f_(1XXEx8fbQ`59S z#epS|LX@|y=f)rEZGlN+IhWY;vu;yxUxZ_}8LkmZw|zEuTPb5=WVxMn^?OZ4q@S~W z6o(XQHh+2kwA!V&@qE8a=Ot#2@_y^uq}=yRGH57VK1x@#oXPS zUw7h+&Tk%{`TfK5e5AVSTkdz4bIhx)1;G_O#cUqWG*R1N#6f0R9TlC;x(_;cab_Nvxf^r1WgI=bXw*4L z`y-rlYVxnM0vaqVNm^Hj6C(#1i{CC{>$UQ!5i}2L8OBOR2nuKXcwIAOD^=KNqxH;f zo8@U%s{ICkA7{1eih2u;GeYAI3NoOl!VHjX#2VR>_wa{|9!HIailhHr`z#I(Dd%*< zj8+rb>IEMg%leAJn1jQuvCKiJo6tlNhPO?`T~0cgX=o(bBuvB@M!nzF8y0;|F&hqi zm{}Bb)~r381`%-%(54S`;va#tH!BTjNI7_8)4b8FW~GzJiDq4N^p$8{P!NusXnWXQ zwOJW%`F^@@*Urne3Tj&5@f&IqRbkFbQfmNF?-Alhib?^X(%e??NL0rfwg+Uss>tHyMv?EoW>aYusC^dj z7(%{EVYoH4e_d;wZp!TnPf&%U&odOc`RDCt&FvetM7?ZEJJxi>v^Z_5P8=!}JBpMc zyX)1oaHd0FMT>#m0q?^2xM#FzOU$(x%h3S}LSJ1TsbSltG3RY-_?VJ%P$TXWaQeaT zt3n(rzTV8>3Pse)*ioq!C$!$Kr&nr)K`*E}iv5t`I<0A=aVBYInRm?bknB%>Wqk^6 zpmK8vSdD$*Ir@O)o|R@kAvLz$C|7mKX~D8sS_3Z<=ZP^amX#6S22r+}lGaW+XjSPf zh-CR>n$~R#*y|rDe~POCs|vfS(2&{ktQIiuQL3*3!Dy@jU=A2vjJkhFr(^GA4A5!k zv!Jz&Aa!0HAKh;%WaVaqvJPVo&A8Z6NbuVYn+c9Ci`M!euGwB31-N2$qi~)&frlp7 zCPZ5qW?B0$&d~~;%43tp>a4TUl3}!`v)D0p>avRoQJ>_MF6!UFuM|UFavas zv}kTO#ua2}Oc&N4Iy(unCz^yBlSSRQ{~a`vYnxkMo^zBibIXil#T!&u+~bMsv5OqE zVMD79051GQSFrV(5iF7oIE(r>#&h{7Z~{BhL?e53k^v=mSCvq;aNHN^EsgB0rI~6f#rLVB$3+k$ z@S?GyYBqZkqO1PG1zJH=)wV&=GwI{@+w>RCQ#gie02#8MDeS2A4qIGhCA7$T7Qr{Q zc}y$o&_>q6cCJwZr_>LEHqtE)V8&g)|G)08y>whd^zoOivgdd`T*D|7=&w=C7p0)* zftfPot6aEMrJoLnfJ{o z?+*jOj-xORc!C1gKvQJKO;NK0vL+s3s_raS{AYfgw*752W#G-4LhYJD+k@h%{}JgmbSqnpq2o&d3(utsE_ zB4_|=gnI3xol)2UKo1rH($pX8S7r!MFlNLD9)Vr)QQk_-Tp{lFz z=JbbI<#ewEly-9e+5)#~J$2MG^o-tjBznl1^IVE~jJcuG^v?c*!#Ok7*2DBt@gQ9X zx>j=h2U@ud+2s*1WujLMCDO8|V zRw>1&0B8N0OX|j!=hh%PdNGX4I4PSDk{tSL{ma`g<=PEQNT!0PnHP@ z9c@;qGW|X&0Z`0%8qC9@20qD^oH$n*2!@mTzuD}|6icPtNCTe{7lKJouPNNG znt>05zlzVaJs9ky?uKlQBbk+3Ry+@iER;*;T7{Nj`$%gX^1+$bPu?OkC#fQroFfey zWZIswK@?fQM+~xl$aV9tAWjAI6U&FO!^HGk>xAf;BACfjjO2jV^gQX^OIHM?(t zdSAmhh7^mU9Y0z>XcZDbfDTa=!lQvesc?3&G~^x^)$BJ%87`5;EG;kDP8gQ0$$H7v_)sp>=Z2@wj) z4iV?pTGhW;xpp=EqL~-G&mt+BrPavN4f$9lORJcEt~8b?GGXm-r(tEnzXJ7toWWLP z0fNaYlGFSbD@=4{t&;-3poo-g?)r9GJ~Uoeq>e2tP4E$ON{I#PD4b>FGQ;s_5BAyO z(w^TbLQ?kSMzajXxYAfxMVJY2i)7(hA*)Q&m+b&SLQUGMm4~73WHVH>fa^u&gpVa{*esv&EJGUM(lQkmDyvkxsKjr#_( zZOB4Z5jx;0RBo$_4$&ag6bAH!Qu!!?xJjufLqEu=rMvOLIv*Z0?^ta>1n_8ayrKBQ zG0Sb#iEZ;P3vE=)kI4$X`LeCL39@x1uO3RsU~|+tWa7~Iv?Hh;?4(&Jx#{9xrKCzJ zC-7z~G~ddL*pNrEf?sHPjewIv6IlinEgH>@263m#k!#A8^9Z2UHGC3H4~M1UsXpK5 zOLblxla3Bk2ybxGjS8LO6Gemvn+2KEzgHGSQsT;l?nDM=&!;xqQkoED*h)09dJN(| zWqIc{;0fEbWv8-zZ8~drUm?eaw-KHs^TM)A_@ncMTqwJIosG%R0EUUBgRz*!)IG%M z$&U%(l`3ui38ukDq+zkd%0Xks(mbUCB1rcuO;_eTO}}haD-~8bta`YX`?cgqcyx?> z&XUJfcWG3r6?mYW5ToIqF@8^uzs{eiN5^?Rze#!mC# z-%`Cb*mQ+B$&9zWtI8S@nq*C$hy)C)*k( zj1bHxSNi@uG=`wFrW|S+UIlO(x^<{E&X`%b$e>2Wvfrvjmc?Ou;LuR9;X7ZmLKm)# zV%ZbyWaVkk6U|gH0v{#Us|>b$@#~yL@YH?b?j6!yj_8ZXGQ-y$ADwh146ymZF|%uF zaGBGoRA(O6s3Hy3|58+C&%)XkZgH?g#%fcl`_wiogb+;BN3y&W71ATPZAr4~!Qlv+c?UlwbJD&^*+6G^iXV`Hr$EiqEBMREz#wIF(l@ivf`STV(#6F}y2jJ5Gb zR$-aFj$|-OR!>Xn^RZx-LSLFLM5-B0YBds#A=Uj@+^MjJXe!IlWyxTa22#JwzR_5Q zb{DfeY!R?%m@L{X@?OqduZ+lLJ$#G#i*Jc||5t59oU~>dCZ(2pKHPMyE=p4hYqPgGMcF9LkY? zsba&9#rAt_z6R0N;0LQ6TZnMHuCS6~me-i2463+bRj+bWLpaXY`G|r+sc^fZWo~MA z3DKQvHl4A4=h`?*81!fFW6k=IN7DP3Bd6*R%~WA zi`s!>Hn9^@x&ipZW#1awZxOC6C8^SAw74H*AT?zVW4>`MbI~WqZKKkKsSdA-s3LK6O2sU7T@rMpc^^YsL{P0o#q7Y0GcrZR_D!!S5+m1a*2HAW=j7B+>WHyL z@A6e<(x$b{@3l^k$R-vjwd#KUHf5zMMKV(HKn}bshNu`eX8x6lV)J4<3i?!i*Kd>H zr@R&_+eg=ob~~rkD1(ig*JfKw#ZusMD~L%Crrx99N<`d|@vmfdK{AVI;}_jRaIFSQ zM4@TJk-17AtVMY;?M&;7v+d5zHdH}r57b+uAn=A6DBxgx7F7BPEWzQiq7iyx#QB#A zD)qrIh$G`31r^*YF02kK*kV6g7&*?9RA*@ATXDnNnIf4tdmIw*4@MYc%)hjk@ROcE*G7TI7LleO0C22_J{xNEs z`Z!I%w8{^w17}#AqJez~87QMDkOplyaj8HP@Zu$htVVc0XHXVL87!;SPw@f{P+Rmc zr5pRx8R4|)8*stQyR3OqjM-O)YB|+&_J-<(OCuB+G*U}N{vKm zu1UhGh_}X#-E!wdh0r|sOErod*WRwgBT3Vl_qSA6K16jvMc?Z7qeSzzFDOh{9zROF zTx5-`H7O_Ru46jR)j?kkD>mX8b1e0Fpq##%#a@_+YuRZEgiQh#nqloHXLCpG9!#sI z=i(Yc2Y~F^&5UY7O@NwBsA!)w&0vqfr!nZ-c$9ZI{2dm}NSr6p=HnErm4}eVWP~5t z60pjL&LEjoi1w`=JD)Edc^NVpnaQp!1D3ks^IR(nHMD0_|CgcglnI{Nhz3Q6_KztG zw5L2UDx0I2QIk;}S|YBPkW-$Rs80}OulPm)aWJX++`S>k-b)L+w_WmB;{?@JeXu+z zR+EECwS!$jiqoI^JdzhKrKUxjjqVQeO!Ei->-ryJbh-^&wz%GStTL{ioQZN( zNj_~7?etVR!l!*w$oQ`r-gE{G?3yNZ`pjKZefVZ()Sa<$?ZB#xpv_^9Dk)Ijna~MU zxd7p`nOn;qXvPRMs3N_LMw!si(i&-gsn?Q_aoA@y-$~8H;Ib_ah9Tf;ZIvubV8VH$ z3{g%gPB01h69W&#HWSE+)+HUOU>q^xO$+1Td*EJI_s?Q+hB7?nB};v$ zQ(JSW8%=LQvH&f-MC5?1*2-9OJ$BdTSh=)5jSLdE7nP7Cot4kvR#;IZZj8yx)Gn|n z9jr+5#|)RELz;0oCn-u<#Q+FP&55lvlPqA^b`E^X<@u~`QX(2v{HoK@R(xw z3{N5>c_FKpTAiITAt|jUtwLm6WLXiJs}-07YJiP;T}5)Xh*oE-Xh5CjdRvnZQ3y1R zgnSpx?`8ZpIdxZ!yM#3z$$J{DhriAF||i7Bz99MdB6eCQ@7t&9N`w_R3fdYSA< z7{lBTX{7;wVLBSQ@*YCtv`NXu&N7wKz7#E~j&A!nGHDLhs6ka3nKq?Bd14~R;t@;3 z9svu^1z2ZYzfAh67Flf(qHKnh?P92Dpo>9kr^R(|j?7-2Us~n5*|5S$Np)AHHDRJ6 zca6-9Q}==Nzi#}{)xa5JTAu-;K!a$@Co(*e&oVcJjDPRSYa6EJG*snuc1-OPILh~y z%h4ID#9(PT02U7`X`nvO7*}js$+BY865@xH#y#>5remW~5H-4EsC7ybmHy9aqh|%- z__h=KvzR+_u+;0=5T#f52?vU2Tr`%duArbn^jnQnZcreDgSr-Ny3U-@=`&mSN z`jo+WM3Aw7-^~s zofN3VTDTbNfCa8e90r>0vc)B>?R`lBk*q2sV%7~-JJR~n%F);dk&~h0>t1s>n$(fi zh&ieV*u*L;A`4B1sH$P<&1E=UstzzKAt$XquGkh$Oz`jo9D%mW6`W!_wp*RU+Gcxa zUHb+y>9cpwqI)sI&-ZtVIk*8~UBf&eFGf>9gb{Xc~h9!v__7@758aRet#;isMU6YRG$zGw5RevJ?Ld8qrMtn<>P65f~ zEKnJr9#jn0B`q6Q6r64(M%Sp*xWYSGFp7NJkxo9QcJ$eA+K$y$a6M9?uI|;!O;hMM z8eVnDa!idKCDvXmmo1 zt!mLc+8KFvrhO>-A49E6Jtkl&8uu`JSCmrZkSsD}8#DPLshY|tOE7i4#xE~9nQra`+p%gYm`8X(toRWn3HEdo zr6r-gho?B8C1-$7Sh$t`1uc_+H%V+CToT#1blk|SZDb~9Dv(}UCnz3}xow?;96*$b zIuI_Jh77!8Ve7iJzlRDgy(MZuGfB#V8NcbQ-D}m4n$&V#v+0bTYhy{6obNtaahT$! zB*!XFykUezkYXrv#PZgZXPLaoaP|yN=SxdcE@YTYm--EpYry^39k_zs*{HPp1W+Zy zBdN~kY#q8flrPeOsWk zG7hF_#?6%J{TZLkUQsb8*D?%Xm7eouc-L&J)x@@JvO;K9W^MLJgH-0vql4@B=Md2osG+2u(Fcn)(pdpO?s3sIWwU_T1$0#2&{bL zS!FvV51FW1akE63aSsczvYr&EWpvd4*~|>QCp;Y^uX<;)VwwppweKm_h);}U zSh_VSkCy+4Z(&4aXby}>7LcyS1z7gwWC>?GPXJSn28Ih_H zBodovem>WADB^6Rr#Ky*HmUPHZzYkZ)eoH3o8Vc~=r;hy4Wx`(A{pWzFWPlr@9J!(-%z zD5;l-AbmrfSPr{hPA@K+?-k!h5HuP$Ku+RiQz>CPo`o1xJX`j?@(qpGv!qok+DL!B zZ86LZH2{8TqF60X1vMDOp8-)c^imfIpk=+CG7qtv5tN3|(H^Z24pz*#gDQNW;$;VP zJaQW&5#WcbxS-Mj*v4`pODAAQWCl*=SU2x|tdmwB@1J% z#9=xZG+rY$6#k6-pc7FEgaS7bop-K`*xsFBDLmGOlcqw6EkYZCYd+Bw?|MKT1im+z zn(kSsIj5QhhAY*~f2`t81w>}i*Vj}B*80;B;20dMjJP6a+nd&DOb|Tw9K9sRzU*EX{3&1avzU+ z_F65oxG_PhaSNBr`gBcD^pYQqHg?8dUT?+vk_{MWvf0Fd+CUZ3F;dcumb4QXEGdNQ>uM?!%C~9wIyf z=6!v9LhXAWn?A9GG!zBqjw<&x3%@FG4d5CocVoyuiirmCITqrY%-*0+!M9qa23$r; zK#ytQ#j1_kcUFuSdBy^FYp-`5$sU~pOg)AzFK90|w4RYqN!UgAE2At9+05i;l7@h? zhh=hZ`jj_y)B^bGd-4s~K_2@dah!hZpeNoqEDb$nFA)o>O_Y`W#+RHKJKO^M=sfYT zhtS6$DgUr(O6Zfa zM$#tW1g_Sb^@*X$A=WPdG)LE+2FgKXQ5mbQr$SA(xzUP|IZajzH*HBPg2~FS*o}N4 z#5w??tyQ!Xs-X*_NyDTg?WabcOI$>>+n$0-af)<8k(biZw-R*Q^H^DJQQmCTT z)O_m7f$~7CiIml8)(F&C-O$<@serviZf8rx_u+T4>+6Hr2DV4(NRS$^rmw1I*G=i`yEBYW6xgUSHxWl389I^!$O*;@I%IgGMwZQ+yEfOH&xc zuxwhjkipj2e(APDCZU+xR=0$)gUS*%hO$Iia7jxPYElqGTv``hZG)i+V`pBUkuK=> zsxh@dm8Uh-&=Cl&7(`9w%usQHrW#Fx2`1JKI?`F%M;tEghFlx8%g1F(G}K6_Pn5`t ztAIf$OXJ1nC?n`l1oio%(SeX3*i4LslcY8@`6>(b9Aq76a`!fi2zexaPjJgD%Ys^3jj7=q8fvb?S6;KX7z25=vmYj=agoJ@hU)8BxJO^n3;bxl zv*uV^!r1C+oK#teshG`G5~7wA_NL|U%!9gdtwj>mzFLPZo_kU@$@_r!Cu~k$ur{)$ zJh7JkL+p8YUrZ6a$N@9$IGZ-FCH4c*tP0Za*FZC-k8DT=Dh+_h{1yqyS-g1y+*pV; zgDsZW)G9Yjq+@0>1PW=zUahdN2#!hBL3bJNTA3BMnJs|#o=$1gaN4q%9g@OB5+j`` z7Tp>*sessI0>TO%Xt4`hhI%Uo%O@IH5}r*3mp7`cDoteiEqF=X1+&h9wv*gLZPdYx z1&Kp+sssF{+&!Z#WT7}imM0_JUpU|L>2{I!kKvBA#eIf@Gx|=`l9BeIgGEY&9d!kv zFkfD}W}Wp56S;g`3`$yQ?8p9q7g>W>hg?~krWDCVN`qBm$%cvt_04}X!HuA<9nb># z=71YVi5)U))?V4M)&XO@wXmb*{l>aSTGgFF*b+p}`k{KsXOzgIT63LZt;&NQQ#PUw z4GlESEGRc!1M4#xCqpp7?pjaMY-b%}le0Z8=znjKqpvN5SIcoudkF8B%_bgmBJg>o!d6T+Qx zoW3@M7s+wWX(2o)$7K(bw#jjQUkFRq$+P6Ryg!8R%5mNL5SDF_Hp_AP#t`n3W8tO{ zo-fBKn?v}H9IrV&giE)CaK9XT&j{h)<+$t25Y|6j&OIxH_sMbb))3w+$7zoU;TAc5 zCdXUP4&nGmhVTwKhR+G%kpm&zC&vZnhVV%_c5Mscn{qU^hwv*oCeI7u#2q30K#pCE zj|11*YF1F7K1q{5-F0R+kGOEXVq3!qIAIHV4yYzqvqXnNEeVCU4HR0kIVVk{V+wiE z6Yxi&!|LKU$Bs@`g&Zoi^)7XIz@R*%FgEBZTAszaX(R5u@yz}+Pmz}>Y0bSU`NI&( zqX5FKvbr5(a11wKvid?QT2dBMhelgsB94e2v})BV(`eMjl`W^)8YJjLEF<7CDr$PF zxhjjRrl2_EIYC6JJ~Y%C*P0U#pA>aWGk>iBj{;y>e#QYKYyx1*dudP{)HsJ>Q@4mv zL_J@vqoaYR%SP)6p!KO5g3^4`t{G+x)y%&q|6>PcwVqUx!Z`wRb=HS$HI$n+9|5V9 zz(@hzkoL`(My^mjON;}tKwvR3m!?k|D|I>Ow%lh_C#t+?)}`u+8#inai^^Sp@O#x&xshAA zgR3S}3F?~Y8kd#9I$7A7PsM0@5l%6;8>+RbeZ-2d2ycvN)TUzea8^!*>2(-1xpIf- zF}!)7v(l-OV)m?Q`RDK1t4y2Bf*n&QVFW?sV_$}YQ{MbNSx`iIhc(;Ma^GmymFnvo z4Bttw4qN~v8>Nvm%&6-f0|GH2b_c9acd=S|v{FU$Nr5UFl%6IMYpgZc&q#B0v$*TZ zDzKvt2a0cv^zY1GCE4;X*l7i-#vHVmL8OhKm*pg|wra{0@0D(fPHmbYHOhzjJTX`^ zo64nu!C^~>smXdF*m-M5Oq zgvb?i&(ot=_KNp3h091i;d{?Wn!Ol6F|n!{&g{QZ{cS}OHn7l3iNU|DoS-or0^@`j z@o<0P%IG9f#g}QU`AmC<`~c&vONhMU4O@encATK+SO{$3kut>^n){S;0AIH23YD}Z znIxi=y-%VTt)J|c*l1P=f@NgO>oEz}qfzBC8rjM#$pT_o3a;*+?hwrCi4VZe#+Dy_ z-tb+hUG2nQp6!K|w4c^)Qp!&;gErt_N-@`wF{1k2JaP%IC* ziKZ{02^89W4gvCXd~V)Y*lL-^+OsXua7fa zFpeZPCBZ=2S|e+oN*_@v#&y?rcd&@7MtP`}`8GMYs+ILK4w2#R)zMXUq6nEnqHW|U ztc_R(s-_lU87{0@cg7}B<1FtJ|b{728I~cz=6(dXY84Jr;OQJ z-D(3$oT_VC7qaXu97|Qm9B!;)QB?zVw19nx(JLSwwSo_`S}E&XNMcGF$*j|+T@q2* zm0FhA;vz)sYfop^Y8tFActKQ?c8Ml7QMO!?v@VzSey_d4{XzQgaO;n(1Pt2&>8x4CyRfxfH1`oR0n={r8-MU*+I4uxp4JP z{I+^muCu6_IsDG_n_^j}`8YhF&GOJ_jc)kiN_osN0#iaR3WLyqeqmRs3;>TU7ahb1 zA1;Z-uv;IhTcJ$yN=*wrteyg}RkpJYUf)6szEHU_$QstE=d;wA0!}wehK)7hC30f> zPMw6@7f4#3l9$NTENm*0+-@_u)J>n6KuL&gRZk1<=MZyAw`vjgG_a#S5^Lv}wrToW zhV|)7OG%BFozJ)E0zIsnM_L2p)8Z zfotN$Kr!nK+OUA&98C60%P269JTp6E`hEnKC~?X_;mV3WN&{Uv<_?wvR7D0%on&^Z zD^^K4-s?IH13p43&~=Uu>^cG&c|u{{XNrh{`eg!gVvs=zYB0mNn4K|I?0_Ri_3=us zHL6h|5tW;^XeMBzu<3NsHZ*cC+UR;{nMwyLtES?vUIRW1mPf7T!i1M!$+jk+n1d`z zC$E|P)HG`zpAj$~xUx*4XB(i!t~BUTi3G3oWPy@N|5RtBGh)%u>+?tsL9|-Xd6$8D zWRhhFBs9znCy)+QA4$UI zIOH)Lvvy-gvMOr%&}x=lGn5FDohCRF;WPss#;QVuB5MvO(^!?34tqhBVOs{4lytSI zg4;EZnps= zaZC$gE)xa1Zj7Lb7}6MNtW|DR_89UWI4>zCf$Yfg(1hG_@1+>&OVyOCsi2}Dj_vB-bM?kKQ72!wjSZ-Gi!HX`$TR!@d!Ze!Jrdr4^c(zE0%7DnB)sjxfNpB$X1qp-{+z)DV3i#1Fz0J-|8 z>m^_SQc_v=w%)Pd7Iwy`gUO)Ktzt$wHy!d{B#KU4=7Yt7`g{-Kq3N6JpRuK=ZK*Q9^MBO4X|(RX$X#Hu9T}x`B4@+UBXY8fJk1()MUTB}|RBZ%CD_K|MpK5c*l1 z9AM%+vfa(^=aX1VMrZ!mB0y(a8e%HokNFTb7MLvKkmFNGk9BwCawsYdJfT`v4Vrwu zRwHpDQd+Sb=Yjf!qI{eulQn~lOmVQx>YEzecMiBID*?;kKyuM~hhOTd6(v)oe0`!X z^9@x-YW0b@U&6*KP1LQ5j&4GIW};fH-Szyd0f%emh#IL|>JgRZfqkM6sCvMiCDzX% z)g!5_lCQB>TA-xGM`0@%=M2)RitvPISe7BU^ArY^SSq1E0q{cigge$;m4t+`kcxRe z)S4PCw#MAKtH}d0sbraZee-6PIn9!cmB#)IXQ!tDH+&^VeWC@c80nGYWw)_nDnjN~ z)cPCBY-Tb^2{KU4wytB7aXO;pScXGYQn6ZT47^E7c8Qu3DSITy=RkjA*}2qngslM$D!Mds06u&`*JC$MnmT-KEd$Iwfp#Yej1ws5WAn+~Kcv zaj0u|;L6cSI$bAHTCL$?Lm7*`4#{4b!J_lSfu5ps%%s&oRFcRyF2)dWaB`!~8)C>6 zhJt4aI7K)_rx-+HWI}k4*T)OshKKY*_k;e6M28N?c4CGm)UA^@Za{$>qZ!WFgVeiK z9MYXY?RK`Wl8NR7DVwaTAxqam7^N|AWriZtIGX8-pwc&dgM}I=vz$GyN$^;du~qFh zZ8|5`N!9I+D9!Y=+bLfU>Y$)~J7wNgO2vMX(<4U+WcvfV62={|uqMpRPlAGq8lP%i zXc*gg%CrY)PRPzt0-`7_6Q>eNof~3{v263W0*q@}l_v$SSxf?ZjA-qHM!$DST?|6z zn&JUFWb3-L#X8ioSTj$Bt~`wqYD#+3m4LEk&t|9-GmFcSrcxb55HjX0u$;b8q*`M2 zs*4zfj59_Cb;>CH2Y1J)pVnF>OOH?j?SqBkgM$VjrcZ(j609x7*bbAm960(BaFOUf z$VIdr-X2vh^I3w#kYl?oRgCqWC7hB?tk8>M&b_7(X8TXQW|hFRGg+~_igi}Cn+=Yk z=prh;jWS?tq~c8_0|bj*kuJj41d8-Fs$Otc;Y1}Aw9J$g)4+APn@y=crmSS7Sk|I^ zt{<(C(M$(j*WURhtR?0%Z$B@kVkxMYQpQSIuM-8MVXC-a1kDu%D=|z7?@kIrcwXCd zG6}7MsDTpXJ5aSg4CMp@w-=V-#Z)=e^!md(#hr9Lr+R4IR&}h*``b$uK^AhairOrS zs`kq?uXT)Y>C39(hdn&IU%~}K)fjhdXdY3XwA(C17GjWh92m@LAQ$X3lX0}1d9tQz z@>wMl*vCrg(I`ADioFJ12I}opz(~Ry-e?Uf5SdR&h+>wpns90fwyTsrd$t zSa;-b*GWq*+=HoAY1Sv$)w}%qOqOFs1H ztCuQ==M+yFvLS16XhmgeW?$7PmJ9Vk(QOq&ugiU;tlD*DLY`u{f~v9DY4RVP@1TlV zw@yvY)rohE;2u#*;Rk{*THOiiyVKn%%V{VTtMF{gFY9gbHLW%f;Z?AAfvy^`yh+CG z%?V1c1%ozTU#vgPa&>>PV)y;3jBprk3)Pu10M7gGRq-l@^FaJ!_oQkIdIQ48a(Rv( zzG>$9Kmf`vX1s3@7Jh9*@lmZTEklEZ#u)}1FmrKNn*BTMti*936RCodS6FYVj$4*h zqd%ppZj3s@G@5gY9$1|utAX3WXPV9)dh$n;@Y-NGGL|4gX+UdclTD9v0_b|xy&b;} z8L5t{MxugWcAl9@gJY_tSL;rughVu}t|IC}&A0&h1m;4q@N)n5Z2ugGJ6x?1*0{A@ zs5Raoa3OMTaW|ohREwKBW`62IDJ2z~2DQHOc$v@``h$?#P8UigG8-k75QU6bjwFeq z1Y#@J@Tk{6!qSVi?_%Xl?dAG@A9UxS$7Vv)wmcPw5$8D9A+nd1gKigOfx4SpTmHPflOxpLa{%3E04R(>$? z7iM+bGK)lIfKH6nr7WJ2

    Y#9~B34Lx+nv2bONX{-zSd|i+ZE7VpvMfZKFji{B@bdlr{ouIK zjkd6H1Hu3YibF;ELAQ-hRK|QXBJRjw@(2{CQMC;2ooL+7HLR2!uu=Oj*hyeld172% z<)lr0g0;k!dKUo-9|y4Ewiu3^}LuRO75z zoy4^wELOfWy>WG6omE6h(xS*lWX@WQTcc^2XR7F%IMC?Zgw-0TG>k7fL;kF~Fw3gQ z;8@D#k(dCCt!iYN?_s_X4Z6@l>7;{6*b%53^DHK+ft9cs(*i^avbAEmRzI>ZsD2#{ zrA)zDMXQ;cj|UJ~G}%~)GL}|XZhh}l62$nc#bWp(k=jVi7X+Y^;u%I(mxUE*zo1ND zGyX2y|5cE;p=Hl{g5ddOVLcVOYPt5f`wfST;%Au5=GrLOHV}VW?$DDoeo! zYO2+6%v2-eT+=d|8DU)iuo#p>_r1QL6+;bm1*Q#(H+R2o7H!YJr41tF~;y= z#1G0W=@s+0mtT4cE{4sl2xjZ))Npcz5>#C9<~LN}_ZRjlk~vc4dvS@q<5fy zO?R~d#CHHmEXs<%Drfl1Z(}SY@s7gV0reLR$#;5K=`?w%^H)W<8ad{!_jcLVBAF`EFe3LHB9xvexQixuQmp2 zpcJi&d!Gij>Z}NSpdu>MU_!q=I2^5L60c-3sLyyfoyC|ez{H_%xs^y-rzg4Q!Djr+R&NWH!F(+6R(YXGYS9bV%9Q%7eubgb&<>YG}5y!R};U z_4a}A+RIanLuXg}Tp2w~MUZ8LM>mj6N>&T$)7_O?J&R~~xmy%BRk`0R>@H41Hm1&PDcc14VJly++IgwHhJ}VdgP~pEIYP<9~e%)Zz?dAW)eJ9_cxjVU1m& z;#YG=N^VE2Zsfl=gnnj&SzrU0`O1*Ab$F}-hMw{|l=_VsE>-1csjW*H7Bwg%%Wka& zBC}nE`AyZLCWkW@&*gkZSi#^MGG3T{r(QwTO+3MSz~FwZ$qencCoZBArTktNt|~b| z*$PvseAkYxnuk_Ptn}$lRx=-`^65|T;=T;&pzABD5o&1-tQs-L#YhI+ptpX^fxHNG zr9cS{ktP(8uwpaj2et2YyU9~X*6JB)gi%HSA80OWWZoAeG9XRIQP5odpeBVFK8ps7 z1*#hG!c{9-HO8zeal#1MZ(uVm_@rp`v5LkL&8r}%Uf)u0S7n$XtP!g;SuPDEJ6uE4 zTNs;^HlW^)wuR_h7wa~z?w#_*}Srvd1X$b$8m z$5F;|BO=kPs;ZVvstrxXYml@ z9*VZ`zZHR1=mB(Ut4Sm0ZIbfig(%u?FdKM|7iX-I#WH}I5 z%(;!_;(YQs@S19T1+CI;O1vU!hn@L*a0;7d7E3KUr8UamDlFfz^p-6RZ6y{T>?hv` z=`}nnET@(kL$bw?kc~rVjic+_v@(BP-Z(PtYlN+5$2<13QddPRDGLtQ`~Nfp(SxFP$nD8(oAMk*pc!N~Y{Sa^_3OD6B$` zl5)t`>InpA%1xM`r8N}G&6q;D>e8uz@jm7SVx)(o%QLNsr-px)EsYt{QvM%=dk&yX zrHA1!*y$|W1no5xw5KTj!In)h*4i@Ah^qcO&HYVp7@6`F0b0~@Mgw~>I(#Hp2J5KO zFjyYTfen}xllfR;^&c}qbtco%D8{Q|lYw7T*jK}13!W!56>#fBR#@!H7@O5kkfA(O zp2(tO_3=p#l31vfs)=0{4=(jF6wpmXbLl6`(bU37be%M|S`Pr|l5Mj|9pen{F6q$0?^b|Pn7&H<$&S*P^6(gurCAgXz##7qrq-^E0f}|whYpWo%wXV3}B-Qnnor| zQ%~e(o<;6tX^ylIIx_d`7&P`IhI!cfm|oscH;F_EVR(9a!OX0j6V#?5*V{8Xh}>Zj}#>AX+>7P@DQZMdrVCe zL3~(x%}NdNJ?dh-;}m{Iy(@z64QGl?*l?z^1|_-m3_NS)_xl6b^svK5EDu-d1*(s4j4yzQ&Sdw%yA%`(rj&mM~VQd)YJdDlk^y~Be{R!9O zy584yy`S&b`~7lJ9d#~7ewN-6s_gO#l*dEo`;DOxT zs`du48EmaO$Dr+_)mHH*`JW94@|E5C2&b)99F029iulFPeoq&2KY21f$e>5XqY?4uy!N2Of$<_m@Qy)Y-_=_SdKh z&b4uvcI%=y+2P}*$eQ-VY@;)bxndzRnnzAZaMdF9`mOxhFOJ0(yF%+;m z2_t)s4ubLC*q@A%#rWwRq$xb)!w>m(ZVTcP{Tva(vly^Qad&Hi6Q3@<@&jM&EDCQB zEf&khFO|b1M(px%zWd|V2(|o$3NzW_khSK`!5W&q5u2YgQ0$pC!EtsPK&%!1u;whV z%;Gk}wHrTKC2oGH;TK2L+z_IU&yx5(fsLyB) zDr&BN6^L#+E|#m>`28!d`AY;Lk;$!-bKAE3%| zBa+IH2-pS%ywASHdG1(xPA+n3exsU-XNXr25LZYh9sBr1gGB9i7HF;C+QhIK2Fc)I z21&I9Djh`Y?!-MMl>VE8cxTtz2M?IjKc+?tIL7CT&MVf@QE!KppqT$U?Lu1jznF(e zW=k<>zzPo>u}ryP*cft-1!lKU7438VR4;d(&mJL}B9u*%)jhlC>S=S0j~+0x4Dt=6!l$@XM@VsN|=#K(Sh?oJ0f&;{6{FxDdum1=m zhiU0)6|K5awsDqsY?;gwcETs>J9LnpUxmveyk`fEp_NOG7FC~L$+k?3E@-v8WEIPA zEm-D5v87P2D4=AYv#`D^_yxo&HW9HYAiVM*#>b-L{a+I9i}3eT8AS%uTXbt&i}E7vWB` zr(yROJ*kHjByddNVh9+L>V8uovvPt^?~s79&FoUQbw$Op3vq+m10BAsFY}7pN;zeB z;AYG7`H4jS5qkR-k;3{apsBfW| z@NXTnb%be5nNT>5x?82lhj)pVL}4MuLq_V7L&d$|gxV&I|OVf0EgoZU1ijxMpvMy3l*aexg<-6Hg zes(QC1TQODh%gz4vwxU*sp)N7XFsh8Fb&I3V&#!y_tFveg-ly7%TsD5%;yR2&o!x5r$6S_{4s-Vc}T|4eP_Ukl9aXyK|$xXb&jS_XTV|P2b-qRw{ukV*d>+=-1}nF)s3gd>e~hZkFNyGoCBm0!lfz^t-iIW+Ik{ee zw~z$w;SVDZ6ve34TnEwQ8yK}R)0ZgIbnb;y5Zcf=?UQ#yy+hAj_5$zSQKHBQPzkbQyKB!5o^ITI{yx+qY&Lb|!NG zU_8j+$2LZj2xgNrKUW=CC0jHS?0d(^=;T$Qs#h8VBjf_t-1$x7)vreVmiFqPty9Ng z?1m6(IgrXo`oIAN`LhG{n%~5?`-PLyq9@{4tGu8|az*%gn{BrvD^UyCfbgFNr2wgDE&TS3Hy>N+u@rt=@b8wAP%XxjlQ zN}=5?tQE)`h3}zhNM0bdA{(wG!Ym#3P-hNW7#?A`KU^R75=+&K$#SIf{JW$yc>{*} zK(fDS?9OaawEE|BmFxs+jO$iObcMP|9%RTlCkxINhmQ%nUI;g|Yp-N5)K)*AC|Lqo zfFU1A_u8|`LJDHA+Pjm?AH^H%;PoBxd2|48%`>XSIp%;li9pKm_%Baa(s4&#gV{Jg zL@)0ym& zQj>%!9Fa}vaN#eGYnseIAH6`J*EC~}rD*@QS|quJE!#;YYCF6YL%-+}ZvZ{gK5{3f z!Y+^@e?8xp6?mc?WEZQjPUoD-ID2BuvZsdn(3aD48PIQ@BrzBi^M1+w+xcd0E>SO~ z%8g1qZdAi2{aX$2VA#~_N}kui4kyg-S(lx~49ixe>nrF~WclhPWKkjgJ4AkULDH@H zMipT{f1uySsx2q7(@ZysPqUA`rg7`f$kR2xa8YpVR4T0IdMbHECAUaqGEO*sVzf*! z0HV-eHU`*Dp1^)Bzoyv;hlH)Z5G|Cp4*3D^Z-Lb5y#a*s&3X(@azyA$jW zo7|~@4NZbu8qx=bw@&O~>bV$(C=Ptz9Vtv=q+qS4PUByI zn;hC9@iOkC!EgQ79!ZWdh&acsxC4^@vn-|Ww1W<*mK2KBx_Jn=0TNt84-ICx&hOUq z0fldsV(uQ{Ckc4X`m3LI86;;FT5&NAD!NugNg-X~LHp8-0{t+hDzW*;N(@y!k7B+* z$F`Q*icg5*JNw%(a}~cng8lLHk>^yxfB3DQ$0&!u`m6i%)=~Wxi>~a_=cq@|c#lms z&Nb@`+H!guF??R&6~#KENt@>ZgU%KQOXFzK_mG^K-STi7hQJIF5RI3`HoE#q zX)%{^mYOFWIemJ(zob6be4{0>lOV^{_j&Yg?$nY*AD7^@TvhhUIid7~6?v=8N?A`O z?CcSR@bjx11r>W#Mo?W}&v$wjCo=2PJr7A(jy`})vkRKheC~Ycf>@2~)g2fid~!R4 zh{akh?c>jA-mc6PT@UEL5fIN61)GHJZ%7I5RI@|Uo|ck}(EozKsQW`bOF9AGbPZeK z*m)>#H z0SD37x=>yN4jic)hd$e5hS1x1>(rFKQpCde_VQg4xe`3#sprF}QCZx;*`YbVL{Oh) zM%BTwtyb-LE-&&IOs`GQx=q=#kzjLw5iqEwKz^ps4Xg9Oo2ews#|qD?xb+i*>q+Hk z3Y*(aI=9h%XY!!LC5sJl>-gXjO&$grg3Cdqt_xidM5a92;(01doy8@0O>{X-{al;| zPV`Id|AqQJ=!tXwZNvyF&`%VBr~9YprQe3RDxLucSMa5KzY#L| zL}4!cgLk(9g$PmhoIg`X2E^ON$)0G<2__puW~ZK6GcDZ#0P7Uy$naHhj3v9jMGHWU zQG1k81`t^b{}S>O5$Cgam+xIy3G^pD!&d)*oU~+{{&ap18DZ4{7xkKyB3%G(I0yv# z#`UM4x5*iv-Aj37rCCl@ryra?}bE zB|l5ju4-qZyGDkRsaK z)5X%@{>=%vGl#yoLZ*C3qwdYHSbTArG{JwM;(cy5eQAIfcBSu+zaJc@e=efYjKXpC zYe41VJF}dD^O4gm*9!Ie4LdD@x0qkP$;Cu*Jly>40%rdNY_I{y*p`CFZ?d235DOtD0vacL}u zq2=7{Ji!n=ov=Re+a^Y&@HV8?!{b?n3Ra>WE9k*F3TV;%|3z`g${Ht9YEt7f zi7C;Hn~rMH5X)faHHi8TbU2YWw-#*VtQ{&g^x>~{&rOGD&9yWiYslF=d^cU{{xEOX z`sM*mYM%qAk>+V4N{i=!E{SoBKe7RRAwIl>sQ)OBs4Kj}+%)zDkvuVfiJ(9aFyuF> zl6d3* zP+M+hH`n#Zi!XoqRll)(l#S?TV|0VxX>rpUnogk}G?sbu6G0&@EyaqFg9A*B@U7!W zdB?Wj>f1wy@r_5Q@;x6F*=?Bpw@?htpB9YS37H$ag$60LS6sGN<8RJdGS`Sd+o?0S zptX*PQ+pD0D(ZGJ-agojqrEotR2YO~JzTOu$%z+f?GQlSMbCywE?KP|D!E^j9HKqt z%dBX8b9vB_7gh?>ARG&{jkYvmi*GdNf4Kxn7Qj}vnE}rZN}L(KTka}c=T4a z;Ty)P=Wu`>X$c+52tl>^F6FSs>+pOY5PMHBu9{SY3H>|PG(mrT53&#UqY>@a{#i)s zS6ReMhx!Chaeez1tOC zjQM>`cNWIpT?e;2>SsxCfbeeLn7sYY81hG%2< z_&G6o>Rd9j*fK(^U|7=;xsz3N4;q793liHG$rdd&`!2x@MH5?us(zwhY6%i-)xm`u zQ^cNef)y!~%3cg$h#EZl5dp6XIsMD@9;eg>$diyWIg6Th2bl>_z`_fglNB*YdutVB z{K&~^+qhE?uNX>j1uc1*!#(_P&(TGXLqE&j71{Ilm&j%CgTis

~n%LuT>^O|5~1tpB{#=-}%rvHhtia(q1D(wS^ka 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 #?y)s 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

1YE~j)jU$SS4U`)BqpM4X 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 z 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�eq71nu{MdUNG@T_FJni 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≦}V}FrR)4o~-$n)ZD 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

vzEaunb`E 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 z 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

v)=9X+f~Lo6_I znZ@#|L(WbNLgY-4)AZ;1(Hc8%K~?F&m!*WWrfed)0iX%p)kWAFtS3TnJ6GKKSUf*s zWet}LSC*u5V5lC`-J#>V$PES^2m8)Y;kSnAFDoa5=r6QRgJ&ImG}$fhz)yXkWL|eV ziw)6%y8Nv01g=E*cj~8Ie#eN>>y6jL6Op!psIjIJg4RrziYBT!L92T#G0854pQ>4~ z&gd8D(>t&=92i#eG)&vb)Oec@`IsH<*B%=U+%Emp!@c-i(LAHWqGBbvB=SurQwX`S zXtw}+f(y;4{)IO#YhFALz=Q7Z%v#x-bX>7y_nyvMMWG)i8TDrusneIWye{(BG^&Nd z04-n?lV1m)0md+te&%%0%`-h1JK#^-1! z4DB;5(-j})O6e8O&mPGMW)8~xN~HTpTUfOEMDO&?h% zRZj{1%HmADn<_M^Aw=G5@Bs~4)s_f{FWooYBm~YsBvyZEk}OOfj1X5$q6n9fq`SYu zqlr#;dBkwZkTqi@zqlQP%DY~pE&TanLDd?Fo1$`F;`i@w7IlayI4-C2`-bG8dFSbw z?In2(<3Y8M#NrTTn);bC=g%*9h$xRs%QfQu?4an%^3gFQy|M2?T{jY!Lai#jBufFjQb4C^y`!$q{26FkQ}wvGjF#PUbjW_&zElZJJ*=M! z)!R-3jAa4`FDo3KsF^rwjP8C~_6^ScLRJRJY%f%*p2{lZd|`+=gr6|`bD+Za&dc_j z)_!uFA};+9d#IM}0n`HYmyfCQYB`!t;H|!*$5^aTBON7(86p$( zpBatX5*w3tN0lPzkI(T2K8r%DqN#qPnn^+m>=v=d$(E`GMpK7x-c7p0s)cujvp>dC zOCz}PnEoDwO0!#wZ(GXa)w}dnl#-%iW=cxOeJ!?-H~d(TaR!GU0=N~EPPa?&D?+)t zg;7Hi#(ca5d5RjldXAY|!M=!(%!3cY!=41H3XA-}sh}l%n3d;kUT`r^IK4^jlK3o- z%917(P2zZiJzU~WfwdtuI~3HGlGIX0U-VU=!uYOtZWG_IN!7ycgMs?$iu$VC01rEK zN#Py0(1&-as|i02Ela6g1QG-cs`2|^UZijO|5~8}1*(?%isp)w>}`k4^H@~X|IPGD zr6{{C2LGX-&OZr%d`s_5FVhKLQEI~BvIrqo9&O^$#(?^3HSKpV}4&GoAVbt2?|>3cGr z_)CSO-Z$sf6aPEY$De;kn(~XeXJlrv)uboUUM-_6p+4e3o0<6wi|X57SQh!$22RJb zRws9K#vtt^s*ON`IsgA7m~)1(GYN9cY$}Yqca${!THn$iz69fqmp4}7_mxvAlV+vg z61NiI6kvz1J-bVh_J!8+FBBX8g<>(rjyaHBQ*LFerI{!=&9Tva@Eq3E@G9iH{wI&s zJ(hGG9&!Y`%4J|dQ`WUi;V=aGl3CLZzu1dOr3pv(l|9ZMI9&dJvBT^<1@Ry}VbmyL zX#+>`-N9eTWp8Q;X@fnFD5|IUUDEBXPUJuaI{b@)|A|pporDU%zD$xEKjtl9dMe)M z%{q7`O0Rk13~z$?fTE;)`1&=7j`JT9%f*L9yjZ?k>Tkg_=H7sK*zxrLI*Oe2v`e~l z@hsy@D{I8}0REHEmS+B+33G&wFJ_NRk!Y6p>n&zFEQwTBFS_To?1CW)wv2F1$ znxZ512(ReyxA>#}CH_h3ka&ncF>`^#ucje?uZhbg5o$ATXLIF``ON&+6Wjih(xhC} z&{wi!rC(o6L}B*Rtx|+f1E-ZraouiM8DRfSH-Chs0K29l^zV)LH>rOd8Wmo}g5b8j zTA*9(@bayOmOknj;(Fo6k7|#ppk^*O982@)Hs=B~@cBvKG}8Vp=YGA`GQIc8MwBSrL8zalY^IMu7#*_N0jYm z(%$T6&Lub=8tu+~zL3I<_|*}fQem;f=BpoWG+-_}i-cCAE(*abCH(zFwT00O=QA)P z?aU52iQ>tu`TZW}M5HeiFp|gAtM5Qc09Z%wnt%9yU%mO~gYY1I{rEpy#oXzy zgUE&<{v6-L_YQMG6qvf58K+XFy>jYVJpZ zqrnl*)b3~OR7L*W1vF=Em@)>3 zuFKQ#beb>6C*yPJ-#UiUB1dH-)C8qd#O_XFPKyelw&aa525*6ddQYP%_oIP|(+W%o zHN#}TS`W!HNQ{{8x6*U1x_aPGjy)%iNsga+miRgb-l${?0Rar zI~pQps^SRfdL)w#!_&_GqKBd^neH(q8j*c~{>yPHj(bAhTK$`a=`}MwJtCWuPl+5le$Tc>B9`I+*<$d12{C2j+k5%<_h;SUKW* ztWk%G+NhX>hW@=!SkJXKjeV50ruFp6jTs1K5n+^b;O0yP7{7~Cu4Y^k#0=j#dqT&V z!gk%_*#n9xfGLVL#%JbZq^pOXiqHsNxzT;{6+)**{Hs{5(wnmGg%{?5MH-rY9u{NW z58O;YI#X+0rg_II1SIF5@ChB6CG!ghME*)U@NNS`Lga4%XB|8JuntFu-OqSB+5H~! zkGu2lo2Mk>pm3^bW5?<-{6Pe%)z#H5?``^Hs#MMHl1Q|B^AOz8 zDdOW^E%ZAU0l$l$t6=+HTl1;EQUiLcl4&M&uThB1KqdPLpt=qH=%RbK)avGFCmE6_ zbrfS_NNW6+-QjNn8r1mHo_wGzb~*$+(oxX_!a*65ldYSMThEXW$}Uvsf1bcPeUSzI ze06VH0w|Z*pU(hSafwoleP)9_jiH%-)Z1coxwnIi5w>bHpjTXB%!;G)0DuHh27~VK z`*rqG&5`T~o6*R2A?*j~9)1-g)wFj-M(jfs06XCoStvv5bLM>^va5+Z?`&&ju4w1p zeXUJc1Zp&Zgb63TYPOebK3HiO+2>9eDpACVyeLP~m&8Vp+ncG7E~N09Mf4Rg`d}j% zeN~`a69enaT2`(+ck?Efm|C9McT**)$N}PL%rj9BWxj$k!)Hzy8FZi5`=U7=H)+9# zdwM=e{6Dcqe2Ys4GOGH=qBUAy+&YHt z^QKZ@0AGbpw~5j-{!tz<${IBCNJz34S_}21;)WU9-8ZSsr%tz~=1B!Z^3jb#U_Rt; zUx#)Ey3kGNI6(0o=pS!?rnkF6EY}U(hbTKJ59D@#N|-gtuIVPM{Lt%YUd5mENJ6?= zo8@Vh#Mq%xEt<$E>lf?7q(L+S#`oSkw1c3E;n`CO1<|V!D(F4%Aie0FzfF(-&7o0> z>Bnzes+-WAb9z{|mtm3N`GkdTELnP)>ZV={n~YS(GEPylQ}pg{QA4!Sj{N8kisSQ} z!7PE`tc)6JDT&!kFlAk{5PqUd*TBu!U}m4Q8WlqSX-@}*(JsoahkQ!YJ%FS87bq{Gug03$X4+4>loOxGdaU90UiHr(mkv@tynxIVQgux7jh);Z=F zaj^BkNPn*3e*VTZP7#<-r3=5vd!nTIRCzr5WRwRX;OmjjT);7kXdhpT4xU_Y$u$@3 zO0lMPS@u4KlQQpXu=qN+@fKK=QtQ4#XH>berY*}`|IC!oHv_7tW`X_^Fj8l}#bl>k zORApaf8HqOeyg{QR6V!0f+#G1sltsURJ`?qej;JSYaHP{Ty$%SGsZ?Z2(o#V87k(T>}p~giNn{ov|p|%zu3AN~7+r zca~!qe!WgS&%B_AA)aFTA&2StieXX~hC02>@2q>cf}BQO#;h&9+A`-x5t>rzvN}?0 zcK^oa$Fm!oD|Ud~I55yrJ!#o(MS%zbkX&s}SYQ@`!|cbmeMmjf0vNSD@Le}5z!>d1 z}!b|>PnvnCN=RR7Vh&2>b97ue|z7DIOLE5key37!b#eY=`x+tp1Dn)_^qjf zD~920L7K-Ju$c=8lYz>K3NiO!&lFhe`mZJ(p|wnnaKL$<8cZmu5lhgKtFGmK^wWTa z2rn(Uw70M{>d}K+TwaxiR>rTChV0f}t`Rw)jRTHH3pxfo=fdV%ueDfIrfx7)DOj13 zxMF`FvxU062zov$tC}{{$*_w5u5h#bcwtsCRdGz7S;>YpHQDX`ru&)vr(0YaKrzOX z6@}0*3r%VO==ixPCd!SXN!8EasYKNdoM^?*lE^ioG$T%4P6zeO;S{Zuqsx6T2?Ry_ zPbC$VbK{=Vs65-DE3AW?MRJUiOUkitoUCR1Xwz-r?Zn+#iaOl;Sx?DauzQ2_;^_Jj zo7@U91zp4Ud3k{~uk7imfibQ)Y=&|O4e%E$@^YrL*@Hu-#XA#rSCqO->J z>8s0d8;Udxh$dlrmd$lOo!Nz@3?QS`QZY^-8rJ>6>E=E&!V``k0!k_djF&P0>V#h3NG?nwI;-L7H{w+Ss$ClzB zuAana|NX>`aUHDQlZiG(lCOq2x6O^KV>ld*a97q)n0=MsakCXM3-)gEgfr}t&wlnz zna8xJU+?}#f`S*{d{FUCX&Jun@_) ztqy~XDcJy{+t7wzUL<%?LY@xrrB0&_dYen5-#gHSdB4TgG)E3pxh=->xW@su6*>cK z$rd$zb`QtjxD;Fa9qFq!iqc2oD;7@atU-qzdVHN5z6@-l_`b&DQ*d=ZN(G{$jRV>I zS!T?@c80j>Ll2iRrkBLeIeit2kVdX3(zXKU)t^8#J>+g)<%25IHBA+@9rzhKnz@8_ z5vPdXctuypm{B0?roOA%(8JG=o-+n3Lz_!I761}1hIz0Wlm>(@Kea{Szv^R#|4+h>_XEFEHB}K$8nYf zvAt}2b-wq#LC|@8v|3?<#a!TGh()2LCs&1zjE?TX9v@#nx;+4V0pc1Tz#!MMAQ3TC z%Bzu8^U3x+kqf)thuiCfo(&(Iy277jy(bi-kbB*arvj!Bx~}%8IN{UG)Y(nPI%sO7 zh^y4Txybp=Zq(bMS9qZoH1x`XFw8pzc0nn|#$K57JLPO+b0=qN-Rr61Qd9edEjsOo zDZv$|ziz>3)T0mMkUR@RoV+a04%t61&@X4AI(nH`zFy40o4P~&y=aWg+NHZTfx(CC z%!%>INe%$zdlJr`BcT7c9shfRBE8BOXgf?hLazi4&3kyO^PL!l3eYyXO+;_uGy5JC z^)n`a_v2$oq2JTP!!6lSnbx|Uw1cJoPz;%KP(Ng7L+%sDpw^wrj}hFYSe%%1Bdo%T zF>Ok5fIU-=XBJ)heC*zu{W1?eJbQ8_?qJDFc;R_f+veF z3;(H!}&{ZAu$apYFSkWOqYb308u=Ir}1S?Hd&%|{;xde_iPKx zPbp{=!a5W+|F@CO zrHmkQ4YUyq>*eNm;?Lzs>Zxi7{KC@p>)(mbA@Yz4OkxFfjma5o4aCr`H1=>hrT-S~ z59|)9dclZX`{}QhpHzyRS#MKN2g@ddk{t2xB>C1pmjCE-Qg+$ag~Di0GU@Y5if{P; zowOkrE?J#g^z8 zS84PnHk8ts5UVezF#OxqW~=#kApYCUc4H>LxITYvf=TAFJ-8p2|J#W`xm^lwG(E$r z%E-dC&b^o9^2_P90Y{v<^KDs`s2~6J_G4jQFv(2j?QcY_-2!1Y$op@W@)yf;xYL!t zRBw`leAPHSjFn&m?(R+@H#-o{_y6YHurBg@U)0BiZv`GnJpbmsKS$EbPg@)^;I~L~ zR@-h4WJ23xj{mLWDX2haY}UAt4>TXO_!!*wzuHk^UtzWT7gm&5E`tp&j9|2h=dZr<npu!viHLi7 z>r7(z02#MbunW^AY_SLcQe_-=nqZ9xGY>G;-ko;@W(pUJGG=kmqvp`ppec zIbu3!MTf~Y4SCUJ=5hx5uaRp2-ZMsE&53JdnpvRDNmOep_b`Yc&XM;f_|=8dau%2C z*FGvSBsJ1Zy0k_Bx)%YzQa|5PTC=2QT{N4?vhjDA<7nw$Dc>P-e@NbQPx8|R%exP+ z84%JFn)~T7Q~wf~2D6Km4mLX$D!PvR;-sU#92?Saq~YER_Y+;nl0ad3UG+Efo|qQ- zJL1i*C$G_D-g}aFQ)7n+FVrC287#)Vbp$D_Z%b!(XvHZy_|W);_c~r4nEv2&%!y`D zZ238O)wiOW+~p^u>h0H7?>*bGn6f4y_$#n-t9m=SN)zOW*ex3iO}_pfY5!tAV|NrN zYaT*52ih#$*-W+$ejC&L6?n@MRM{iJKP86?idzMU3)4>}c5BaZId8_Bg7T znKMf0jqIorbGI$2KMUOv(D)RW2nw?SwX6Td>|5LjCdq=h^zT?Tzd>gRE|{DG`Ug$- z(QyNSWNUvvYkJ8?&w?Lf?E)z64kaO;0+EKXJ5+JRpXukp4@9My2G31L?(=VfYx@<> zY8-CTNKe<_o)rctCLL46qA~JHQ7;Az3U?eyAj_Hj+~i6$1v?9G-M7$Ffs-djvp`S{ za1&HpL1EdkQJJp4<4s6Jqje0Q!IbTuc+xT#C@#8s2suAe^u#Mf!2NF^eG)i)bP%5_ zuhtvKgrE^?ryJPgjjK@S)I^keB1x``)hthzMxau(e#Vjsa+{TXew#hzyUHcJ_#2?d zb`0T-B2_;q%uq<<lrGVS%of) zxxg@7>6&h-PJg0lMaM+y%%9~sS`KHa()OGVAi%+qewA3Q`}?B$#t_#HiYm0FQg%xb zd>X^dMA*hL*=@Oe@w5h1?oa3Gd^3Ee8j=hz*YF~Rr4o#SHrZkl!I`q#;BhPt*9;NYz&;I3oR@?x2#O@``ObplirHH9iL}hj)a+c_IL0QR zZx1@kFLq1?A&-u86j-PbWtvp>!&HjS+L>nBRZbVt`G9;`+dqaWvCrSrWQR{+@tT0u zpPjr-m^=k}6KbD~`@ChvO7MwUm2}_mw|dU@XtZb8HdOFM;DR~fR#-=0rC99+RN$*# zIEU%Ns)(IF-U7zbLa|R;X1W_LoY`)@dEm=qgn-DJT|eXTnMy7KvzWJVin>}Yz+)sV zkh|#^ziz5zI!YuYB=Trv)(HNU`@O(pBO7(J!4c$yv(LiPvPX=U$uvBiOW@J{kmc^x zar7k|%r~!(;ZlFabmN`>vNnVt zw>nt)-d#P`W8ZPyo4?&wW>DY0$Owj$(pz}}yeTI(xrnTeQz|5ph8gdkMZ_;hLdIHC`p4hKBUhCeSY47DpKCJaCn&^fS5;e-^2#c zx`e#V4PK`vVdT8tgY4O`PCXJY12Meajh&k(VY{Aq@O~+t<|UX^fF3`w z9AK`)4^w?oxP$1tG>gSbUgTg=Y`i{($v=T;nF6kNIA26Xl;9UnmQnKqNR%^mRE)Wr zY^1!RszhH8y_Gr%e94JoR-b+zP@bx$VJ>)Nkoi@bdUy`|b-!$3%ZrqF?HoiXh1nyL z>vtBiiZM38CUi!yrnG^=G^-t4A6y20F80p8^WLj_2D&f9Z-xqDzT9nz0`I#O#8_1i z*DdKr1dvP~=!2A+nFIs+>u|c)V*OR9ASe*SZ zB?#E@`DiD>g2~(aB3SkcEC<(Au5x2S&Q<=5^2Jcm3sGs7=#x*B8i+VyEd3v&aaKR{ z4W(2>4^!lR`qF*p-Xwjvfawm@2Ebe3f`F}ZcA%T65Rp7|YNzP)I>MWbWk)bUpzw&E zhVRRd?l_q+72g(J($`cEHc`yST<&N}jB*$KLaKf^w=x*)89T_Qg?4rkErCUB#>c5I zoF1ICxsef!E{K0A~f}%66q8H>5ctisq zC}xQJhd-@ZKF|?=uZs#3|GunC8Z5tNcDG>vsY1=R#(r|3jy_t6{mp7c zLmebpN@y+-GJc{p3lq6c=@-tVi&5RzzFEyr^3>Yd9?B(e5B(hlzHlWXwLlo1rI1Z+ z()$iU?eNFLu@s!2F{fhbS#R-_l*f0Kd6PT_fRbc(c&2|&_0u-n{>Hf%zrI`YeSWE9 z*PfqNzt@gEE~Smp^qatxpMY5|Ptt1TYG=Z8RB1{|kDo*PGHU^y3Jf#U-Sh>jY8d!-PCrSXG?3nkt?@u$sw$Q$ z7PtW=B$eWjJlwgS`ROrO)fs5>?2E9p)dSTLjiz5D4=u1V(oA+l5f2Aw%$5E1O$ArG zpBsPt9XuDWZ-usK{-V5B71Mt@C$?Xpd9IZvi(uR?4ozd0)MGsT14ji9?pG!K^*zTj8gyhkDMaR)gF=2D|4i*MJG^L zP3HwzG1vk(@j?{@@sTREKq=aB2MT6O5sseXjRbs^3!eZ%jaBwKx0hyXWUVQf z@jOE#&}hfR)NC)y_uW(YQeS_%f>KhnC_?r7na!;YlhJU1{7fRVaxF_4g z+(7tV<|j1Rm*kB6PXK1sWKHLchTNcR=SUA5gN{{W8!Pik>D7M#(R7gNed=Y5^7At%Z z4$aRNVn>_Vcnr{uQ=K{0qH>K5tV8)CwAF4|{pznkC6l z&QAk^ZtM)la~cXMGfBuc{Oce{Rj`MyQ-Ztx;=`9zx*{c?h7)+ks>`cdiZXXpAySDB zY7%0M#-5Sdfy$*dv^*yDg>4yEKVHgn?69<0>8w40fPkNOHPu4Euy!sOD@p~1={Lfw zs$N|lF=$A-EwmhWf#HDySMY}U*Ej^0doQVBu}-C!1s**=Oo-9g!R?(w>QsVWkW@$R zSvHqyf6xVe&{TC`Y2$>-<$}dpxLdWvu{F^oMvHyOn4~%z9RHWl>7Bet^2P{x?7z`& zv`O%FHyuJn+j~=sW;=6a#6Bi{dEc+?@K-AiBd+W2Jzh5hw>dZz+VC_pD^)PyxwE>w zHNltA)m&HQ8@B}Ql3dKNp}*Pg7P?5u=e2{43C6O#O+}^FHF%a(k9~?68fM^E2J3|5 z^S9I+hRdISQt3vnEfYB?$lGXRhrZIc0Zb`a!6WL=7rjNx_$btR!>}eg#(_a?^C)^s z++HGld=27=SNnP z(mygk@-T4Y3v;>^&CWaM5@^%4c5e$s#G6}7H5E*4lG<~YY906}{rFrBpMgScHiho- z#~3QYBr{W)$Bp3G0$-+y)MVOaOtR=J*&(tAzayJ8GdW&U$J~;mda=<0_gHIzLbTE$ zfis1d6djP8@G34=ZU<^wZ>+>W&Bn-7wem_IH)+{4MG{PpK0d8CUZYovpu>Nn=~C(Z z^lb^~^1TQADoP(*PmdABnQ9qf@iWYXDrTe;R_E`JM`m~x-hJ+D8n9mbh})zX@Cj$x zE;Heunb}^px@LP>z5|^)F@gcp4J8KNQ?->dn5n)i+QG|I%qp(5kV0fMy~Gr+iEc0% zot7C@51IGCeh2`1aC(9?WP;icSgF=R-46 zwx0%kxvv#!5n1pt#E9=}N(nX3z`O@0qx(~d0 zpL7^je=#<0mY_XhH#vh8!X<_D!qek5FPYWUFTY{WoMbcQ?H4{8 zUbgEemsON5$0W&%efvTf8}=ic%R9zu%{C@(#0D_KO)Z^)?+A+|x8{G86ap_fj4(uV zro6WRPeYH)`|^uwQlB%jrT!jYtpV5yDG~jdcW~$ta}K8n*v^24=!sStesRN8=mU;X zZXkSAVzKgY>o>8$+pFW+`+dTuk%t@y+3g&z-$&F% z{@6?_tMM(0S&v8J3X@gt0x61dm%4bVgaJN`tb7!{JFS2bQRZ*w-(4JAACY)U-YV`y1x5Lon0e2ft#9|8k?=W z(hf(`j*@j%5hAW9%H=#L~-&&D+0xD$O+0NTxWFQo3i$(#W$GV@O0 zGvQ+gT|Pl|)JFt)cb+wzhvZ@Pg}ZbKi`p(J=gnZ6atD+t_n@Y?yY?G9?+S>G2VYOk zH2t!pwu0JYC;Z-sea9vd=OORpo^ll2KvIg7XI679B9XH*}&1i`gU=Ztr=aEWb31jLSBD7l(!qb9#D=3vty1S z-Xqdm6~U^rFh}wk`(*p%NB!R$W$)r7Qc9f?N8&Bd0A_O0$YPqu#hO92#acw^!0^{T z3k$^`zRn*dSSD^cw`blI=WVEBd+D>Dy-TWI%JJ1?*-Vo_o{KEB1cFS6oO}e8hViK{ zmtTxKjAMqOV?xWi{I5OA@4Hzf-()*{_CtB6+#|G9&rY3+E%xql*0VNR+nOX3((3;sD{AH=k(eD)^(e@ARWZ9+DoOZZEVgK{K~ z9&CzP1`A|8f{@~m17n2Y?ZExHZ+vquM`Z$Q&~!ZAH{^LzuUe&@xV_I7yEY10MF=e2 zLR4+hGEc0xJ{7;e3(NUW5Nb2*C~X!L6nOdk1C&w_#!~426cmsz)a^33GGVJ?V}XPC zt}mthnW&0@Lb@U#>{)0uSro}YV8QJS>eY82QSw~EttcRz0;j$!HTw4dvs4az3~hYTlb z&6l?9huX5``|KH`9c8pqx|r`5r+BOTk|OKd}8GHQvww>-JAcz@1fSf`m1n{F=>s7nJ-;)P$ zM^yApcTdwIq$3@4>nKFHf8rp25bkq16g7YJ8j7Ln0xQckL1&>ZKlW?eTNV*nvbx(P zv>pcB-fz(n;mNN9f{3O~(2~?dAA_Ej4iwdV~L-;LrRESWWQ^ z=Hhnx4A5RyUws|yZPP4QZ~n3X?YQlG8KHi;Favx({zGx6z(N0-D0q?^>Ss8qy5~2jG?HdUC zfevZs`7;y}+{n*5^Y8b2U#nc~dR0&G@OnH9s;B_A#Hw~4)aE6Q(=ajpD2ZnxA*W62 z`uGodzZzf-KK!6)b7+24@Td%vG%#%4GJ|PvyfUwiYNB_URIkk2Dw>_&V2R0ZUF;8n zm=WjaZeKxtd+Q9Zt3e(?k2JmA*4?XNJYeJNezSg<4=|mqx3f4QvxpiF&sj*d?*lFaWHC~h~JT=EH-lZ=(1!r zm$YzX$cJ)cvY(m13fFLIBI!}yaa^s`-g&QH3wIOixj!Kknyov*!#4GJK$~4t?BF#6 zcyvCC?y#Z!QUquKa?wIr*)_jC(74()wPw+65k{;;8rM40gOH6a`faikNcMk61*Hu?O5b4=(}Ni2+io$E`7 zVN_sbNoDT$U*FTORjpG>eKIv?3NC_B=Z;3z#E?Yj=aHmD+=&A9lv-d!(1v-b2=Gqo zLFb;|wO4b+i$p=i|krI7i z`F5-xoH+5DbvDSsg^T3`@iSfjMnK-2kf8TXW8}|*^Way;1s5Io zbiwzu!Gs{E4Df3v)R9{UIRWi~;rW~#y)XlZ9cbS?;hf>On$a=23K2 z0fnp*h5mT*?LJ^4q3AI4hUQOCRMWwRw=WI@i$P7yd$~&OS@nZB996p)+-&A%bXfGf zR4022^d5WDkE7{DJekv1{GOF}ExWzPuh6b>H;T`NRVrAUxCn}2YtNPHR`iY_rt+S1 z3uHXF$zFEh^E8WTlTSTur2Wr;2CZ+AIp_%c*Q9ZyI6U8%ir|wsY(D!-)UqnbD>C2t z{%!tfem{NIkqF^Gm}&Tv!3qpMcFg{3ItST-JLVgfc511~>58AOQ&_q`eWi0jJsZ!& zluv5*uH$JbbvFAyW-lqb#VQ9e{g1_SUp)RNwCUru55Vc3_Znfw7fjSf;udo`(VE=_ zNGR_Yo$d<~WqfmI3kR`(BIIEGKZJloOeX3+9{f@WN`>h-Z4r)eSh&&Ts229LQ5C}U zL>5G1t^fZRiJ7csq9v?xy-Kn1DCr=tGEOnZXY+gBuH+H^ z|LO%GAj>=D7XA%OCcWzSvpQDBRZig0v2}Z!x*rd)rj>g*rOj^m60MUGC|};80W}Wr zyKEsAJ&b|lmHQtPO{~#t=b6sxRB6oy{XH?Wwf##_h$3BnQ+3uXbS9rPbK-%0C|%!2 z&VnFc8?Q>|KFG6HAF%|rC6X&TWY5rqi<>(|9D5x>< zo^To;R%J&-O9s5}xwq?|<41jS0G6YjLv|DZ8hfM+x5@rnLe+NH=qA%(Jz z+8|S-#%wJnt*-aaj_4}_PZP$+Fu59|e$EV9I`Y(qeV^ z@-Po^0Q;@?k{rC5<`D!%L?W~&b9sSMg%he2^}URtlH?C^X{#5hp0%eTIcD#?#{cMy ztM@uVJ9owQGwvtVl0*Ar%Zdr_r+WGso}f$*T4J4?nzuJ4?idq zUtM1IYH?xvEd@B?r^&(&U+@Ke+x_~iM7vVlfO=Bqz8|~qArjWP@!;8+^IOlU>NTA( z>0kU5RIX*hZ^h{^G<57s&hqO-e1r$|$yX__nt?$L*A2HkLD#Hue zhOYMO2%q{s_dV~6?p-?jdD`@#M6a4-fx=;I@z5w2%r-HAz6xp5k`xgcxl%w zZhb&VmZ*#ZEUVk}Kzn{GYu#gZi|rVJZxaI3U!M9?*&l>Q_slKtelsMSDDASK!b)7R zYI}PbS)2e~jMcZ65`jeZLA(#mynqFNmRVe0B;3)z=jS?}^J^*mk~qYo)ED=4 z`n`smXk?^!nPQ?0{WB3*# zhX7*&NOmyjp~d&z%s1k0NnY>&g6ijyB1nq3{Efc&iR$M z0n^)C1V@qX$&T$OoX01n>5fhO^6+U!>8Cp}1O7$g-i@)FGqa){8WK}Cx$t%e=?^i7hVKmy;!)v^`VtBj$; zTXiS&@bzc?a56*o&hsd@ehQ#Fb1Hv6G!1^TfYDX_MyQ2B_^wt5AgX|ESTh5=QRbu& ze+Y`-pBX8;Uf=b?TXzg)w07!6aX|vLo#n9i*bzicFyUXfJ%ksamw$TZ7IB?c35^TY z$9H_RHzd_~7w=+s#rKtQz!GvKU~Ri`%13sC@&ku)AKOA)zv&Lagy&27{!FboQUPJ0-2l7kmVt| z$6A+KK-@`X{OrQz0@Ua%9N2TL4A>Qz+ODRhc_&KBYd1ygf5;4d?!YBN+4AA`oDp#B z8B95MK3Cz7zSvKKq6791ll)}7e&A(tuE5%H3>~3c&>yllX4{^A%M1|1_}g8(NZm&- zoc=5XVq_!OJramCh=(TI-hsxy;no<&bNCcq{Vcx?dKT?Sq$KQ21_@oDq0C)Bc-Vxb zgVS_&cDCUi5I2DZN%EP=_`vQ0+Dg0DCU*#O_T#b@2Ams(IG!i^v@V9_EULjU`d$Ok za9lj2Nj$X3-Z}a^{RN9B>nVg?9zlxDQj0#-U1PHah<4GJ`?GtP^23wG^+A>C-{_ir zKYOo^CoK{v0K5o8va>*F_d8Y4!B#o9bn^|ReB_Y7+?=+=c*L_|as5JXB8 zgrIbkUSgw369GZ#z1PqoL_kEOM0yDj6a^INy@uXw zobL}mo{K!QX69b^nt5i;y-tU^;Tsm%*(^`xQ3|u}jTZq9TNjRhd9u}uD_uPUe zdNqM*L>pYB*;^b)K14;so}dfseXuqY1#k=RRotVq*LpNS*e_A*2bwzHa}GhBYx~sC z`$-?+X&F~?4i*P_K@+z&+(C?}YAsqH=J$QyZ$A3f#{KLVS`MN$o`E`(TmsQEE$7ql ztv?p{NMrR26@`^ilAEACpAP?n*@rv>a6w zNj<1;afQT2IFn>fd4CF&7z}{<` ze>p@EC-a)sB{r-_$eDEHMMC@JShLLQ1*7r`r0E8i^0NN#*&hR4fn1qks4`!BUj$maiXD1Y*Saw@irD(*d ze9y1mK_pf9TmXM2arHmx-?+eJ{J=@*DC>2BIc_A7S(`XDH9}V2+|X-oZ8e+XEoX(_ z+}JpbJgYdB=@!uJc(_UMQEc1eMUmuQTag!6c;(Yl(t+LrH!46=(tX+X^pUt9e$v61 z-MJ>n>4uPC0~M=|h)}@I)lk(hqy@Q?GS`>32^^c;haf?o1~M570uhFMNbkjHR|6qj zL6UjEaN9gxz&h6g6wk7@NqWAiv$|R6t6O#8cjW0qJR45pXqjEEv=l4}G-4Yu4yyPV zMZ5}VO2*{mCkg(VWukGYF^nW}-@UOubZ&E{l2mkzWJb50)NLWZ&U=Lo4W%!D5i_hA zpDK<%B|&rI-y$B)2TA*Ih_4jVK?!=vLgs>9v}{*_#Ufa8(Lh>!cJ)nk8~nR~JUf;o z(aX%zUTk-)?&9a*!){zt#X&Pz7EhKdDM03~87h;|=a?{3n!{;jt8eO*{cf>7Y`7hW zu?c)7{>)8#WoBOnT`}ZjHqkfG_@m`CoyGGIvJU7Y?w#hNXsNU$g#3okEe%u$wbNY; z3u1*>iCZI8A}K;%ING1Vn_Fg&>*|Q0XcU!_>&uHKR~9KeQRJf(JIB^KlcR{WWF`i4 z>tV9Wv5=U1zYli>^nmKVzV}Ai>hW}+nSKQ1T55Ga>BAc+QPNnL)B-wnIo&zCYV1D4 zVti6F!AO*tz{AS-qrJaI0d75GMN$mpLjlq18XqPac;qX;))B0m=28p!vy$p1m! zo<*oQ@Ul;S_mh=fl?hY7V{&ybU~Mn7u=Y4*p=QhLgC=NS$`O;?i2q$~MkBtze*&ux zgnpO)Q5muhFZQ(rG`x3Tytu{+y8YUGcR;3>^+}bYt+$m3_wvgb)GUE+rn3;g>GHd> z!)U=lM01w35Bea4C$uC3iK?q=8p&Mnj`}F2dQNw2Y;H}*+tb_g1c{q;Y1U|!{OC}t*Clxw zEugaV z^odDL94SBCEFF*sVyGmLkeyr#_z!JQ$bNALhfBk;fKeRk;}*M~JN}b9t{%E`xTbGA zkFVCxAyp1m;^2B(&N44#epq~&Z(m%b+^+8vy5K;P_(}pToNA|Hi?%>#T9bjv&1HAj0!)yi<-DW=FQ2F;>&>u%T78~w(-Ct6yW>4m6-qi*;O++P ztLs!Qt#pYj?do00 zxmTqqhN8HbOE8(4g`7lMGdU_sq2dxaUZsTrqU8y_;Jyaj?r6Y10bon6c>cbHzaigC zwtI)iQD;m_tbFNyFGDeNNX0lX!0-ZO<^W;#kbJL{6|3cZ_zZG`WIsdfTY=p^m}gz+ z*rJ`dtTYLIwL}&|c!eKI0y*j%3GTnjxgWj1(lf*I&^mKIVL<iJ$t0TXok*sZje z7Zi%PuEqCKB)h$BSe3~Wk^FM;lc^FLZwi(0QdvNs_iGE+r__v1(ULDk=}g=0u&H~$ z+JC>N=M83e%e3TZj2t->L%oS=qUL^iQD*URm+U*1oE3+L(%b(sh>1pf2RzVstgI<} zpo3cx+8dU4B{_bHL02s`%w)K=`+f=`R}KQ%oy?*$nQ|UiO!5v9Pdg^csn}hg*SfE~ zSV%$7vZ*XdohCA13+q=Esgso7J!)|KmKkmH1v9rQ1OLBn@qZjb%iptLA$u4O<2{q^ zJr#@Mxhc51II9>QAJ;)gQDYBpbE_aTOrKhEV|snC@X6k+o{j z17Ove*%;A0e#8=Uc2Ao7N3M2V2G_NV{bqxIr(ov)k12>@U@aa(u?-tTj*pE=dIbUM z?St8OP>KN0)s!`#E8|LL=1R8PS=XKej#H1cEY{IwFmsbODqx8+;&@bh;Ic*-s>WSy zX~r9lNMXBu@sp5eYfzJ9jO||-S^R&8k#Mrt+*UDZR^xqCuGhk$*M@sJyPJFcw;+=q z|6ACk5aO_^P&xXQoFG`JChVQs{_x!!OJ#fFs5g=SYkd93+4_G0c>0AlW)u6h{uH3o zM*T^D$?BV@2Q({Q1}x<71(F?dxb5@~xqCnJ-3s21RC8ExPG95GvsaXu^I&b)#`#D- zyw#$*FdC#r^YXwiTJpMN*pt8ZRsRq8r``cMdO3JE=^s_h?8d%N0Tujg)<06~yL|c_ z0}w~sqRze@=kp5P8)eT+blL6lZ@4(Wy*FW~Sj%&t?8Y#&|1{bM3$mC=hHlzR-G}c8 z*IYE^r4p#0<|^4__!exTXeXY*Fp|6*UAG)R1KTe7HaUL2$w$uRsHs}ZpsJiO%n`3$ z8F16nx{L{?*wc9RhaI@gtxDY963Jokf8|HiQYW)CGcLedSDu~bqt08$jk2(2-xMLI z(uhdi6rmZ_=~y!42l!v$jEZT%)gywkFkccpFoUHJ3goq13;I_ug z``yd-(-Bl0Qw2WiYmX2Rrkc~0^cfq3I_B$%-N0LV-mE~x>px!WGpqH^ZQ2{YhyR~? z!zLWPb`6A|#Qe-FWO#tK!hHn9@US){c)7uab{@#5I2!li9+f5ex5?Amr9D7f=P0MH zD&r<`!nEZQ<)&zX0zF}1{JS>hpMQ9n{c1$iPJ|FLe!F1^gP05|qU;Mi5>psd%m)oy zr^zU7xdUe|kbg(^l9c~@Uh*d_2!H;rnph@8mN)drOo40or8ByXp3Cyuz{U-1TS(Wc`iipkx5#-ZrKZ9OuSD)%c(2v!__+ygIm7uvm} zRmy-B$R$y2n@oqlb@pv&TkUg_Us==4ZRkUgVgn9Ktn~9XkACo1Zb`53oPEHn2hva7 zpfZfiI=A$w`hPQ*vrUpj(9wR@jJBp+9)Z4HN;Q$+Q%-WXDz2?T;yg+j7dSux(P-Po zVXaZ%C^w<9xUVj$B%c-QLUR{;lv6{f0WsS9T!fIN65G1#iPqnUs`1}M)X$eqaMP93 zd{B=*S7D#po#m*CBu;L}6>AIqexw%4HMsbjO2yZ7HLSMDkG;8^Ov%N^N%di@IowVS z5C1LH{#PpO$EWXQ%xAbZ-w(aYEcBs)J36nRra|s^V@om94@_o0K%T1h^8mv(s>b1r zzj6|3MpU0sQB80CM!hwA$47;{(IlYu`W+Gc zA%TrD|KynP=*0^S)jN_YuiWWJiej@e$MCqPtVyv}_phg^Z77ZYd8CUy2^AOQ?s-N2 zw_#YW8Mo3C1NCJjA=bFuP=lLGKVVY_9DM5rTB%+SKm^=>ZI)x*88!>PG^jh<2%ZupXiqvjWw9KBf z_lzefWt1QJ0+j(7O)_I!oLC?dA|{oBKJeYS*S(;`mIsLkm+jm&A-wgUTG5L*a*eVe zuj6)Rr!S3(s6}!>j;KpwewUZ2l=s5*6Tg!u#EQ|o>x=%^{OrR$Xt>s4SDyP{uMH;t;V# z#bd|oR>W$boRhyq$Jfk!!|JE6QaXuov_ID)5b*%0DFfZ1)YFYCYQzAk za$I=2{*DnP-G36s%kXZazKQ!U(8m4%jc@@4?JXXeK@ZeEKV0+q$lByanTTv{R*0~Q zv=qnDnTGs+jy-BPV_M4q-}P{->A27I^l|-iETHSdAtjBmx-8b2y5Im1E^f zy3!ZHK*|cs3Yrcb<|hVC0OPwUahli+qN@nEJ7}kQ=foBexLh0`v1;X8H-~aT)nqS| zN)dA*>dsU%TVD9$*V9U!P--X7%W;R6xK8)QY~>VCmZ1D;Q4gY~s!zQ3iyFtxX>|$I z^lr1fz!;KwC}*d*_85u#;G#hEo)vKvdTXpI+@Fn?>K9I( zjJQ?$yG-)NEE#JQMy+YqKDiNk-=x$DPb?~!vClfQkZ!^FJ1I0)&tNMzTdqvM74D@(x&sMi~?dI!jS0RVjV+S zm|FkDKEVC$g{H3f&YYq@M7YELlGwrFPrg%x1u+Kkzv=b`M}}}Dr(b+DE@=3%`2M&* zplLE5w$8fUda8{0>+V*(=@WmdPLyS$JZMZWAvlU85V^HR z1qg`$wc!*3P;v`-04ToyQqkBsv%dTIn&Y|3V5jBay%KkSj9Q%_N823e= zHb%eO8LFg$9m)xcR?Pp44#J%b@v_W!DF@>oO*l*xt!EFR|dRd3E$)#frYi=@dmdw1&iD%vcAzO zp^K8gyI_^{x$vF6^c2mP<=zQ& zgM}YaH-EcPgkfbrQ8Y6bry@UTSkhB6+`BF5H!6Sk-eM+2Ge_|Q(w#Zpnd)Lvp-a8;?e{{X`qVr#DZMkY%beB9jGFFu_50*)sP5LBcb~2IwA~)lgv3oZbGy;A!ml?{o;NYlbBQ{e{=OD)P5Ms2 zjl4s>p>VaYroqoCl%A}-KMceHrj4P5zNaX!nYrndht^U9-bk>u|Fm7&Y!|hO_ni7p z1CE_XRs!Y0r*Tf|xoHn+!zLp}JGbg?2rMJh?{=oh)WzDK0$fF9v~c9Tr=5HuQqaTa zzY?LJ-!ewVhR8Vo7Dgz!JwD}py;Ar!OHGilkRTvox_|M$VfxT~bX=&3pVslaa;6D; z)2~iROcNTEz6OBrK-QgN95Go^8KOgf6h8Ue3Bo8b6hKWAU-2ZNof{a&1b)TKq!vRF z<3>T@{Tn=Zej!3%0D3dM^WGI6xp@pprGqa;d+^>c?N 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 BB7gt@ diff --git a/examples/ppo/ppo_mujoco.py b/examples/ppo/ppo_mujoco.py new file mode 100644 index 00000000000..f081d8e69ee --- /dev/null +++ b/examples/ppo/ppo_mujoco.py @@ -0,0 +1,213 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +""" +This script reproduces the Proximal Policy Optimization (PPO) Algorithm +results from Schulman et al. 2017 for the on MuJoCo Environments. +""" +import hydra + + +@hydra.main(config_path=".", config_name="config_mujoco", version_base="1.1") +def main(cfg: "DictConfig"): # noqa: F821 + + import time + + import torch.optim + import tqdm + + from tensordict import TensorDict + from torchrl.collectors import SyncDataCollector + from torchrl.data import LazyMemmapStorage, TensorDictReplayBuffer + from torchrl.data.replay_buffers.samplers import SamplerWithoutReplacement + from torchrl.envs import ExplorationType, set_exploration_type + from torchrl.objectives import ClipPPOLoss + from torchrl.objectives.value.advantages import GAE + from torchrl.record.loggers import generate_exp_name, get_logger + from utils_mujoco import eval_model, make_env, make_ppo_models + + # Define paper hyperparameters + device = "cpu" if not torch.cuda.device_count() else "cuda" + num_mini_batches = cfg.collector.frames_per_batch // cfg.loss.mini_batch_size + total_network_updates = ( + (cfg.collector.total_frames // cfg.collector.frames_per_batch) + * cfg.loss.ppo_epochs + * num_mini_batches + ) + + # Create models (check utils_mujoco.py) + actor, critic = make_ppo_models(cfg.env.env_name) + actor, critic = actor.to(device), critic.to(device) + + # Create collector + collector = SyncDataCollector( + create_env_fn=make_env(cfg.env.env_name, device), + policy=actor, + frames_per_batch=cfg.collector.frames_per_batch, + total_frames=cfg.collector.total_frames, + device=device, + storing_device=device, + max_frames_per_traj=-1, + ) + + # Create data buffer + sampler = SamplerWithoutReplacement() + data_buffer = TensorDictReplayBuffer( + storage=LazyMemmapStorage(cfg.collector.frames_per_batch, device=device), + sampler=sampler, + batch_size=cfg.loss.mini_batch_size, + ) + + # Create loss and adv modules + adv_module = GAE( + gamma=cfg.loss.gamma, + lmbda=cfg.loss.gae_lambda, + value_network=critic, + average_gae=False, + ) + loss_module = ClipPPOLoss( + actor=actor, + critic=critic, + clip_epsilon=cfg.loss.clip_epsilon, + loss_critic_type=cfg.loss.loss_critic_type, + entropy_coef=cfg.loss.entropy_coef, + critic_coef=cfg.loss.critic_coef, + normalize_advantage=True, + ) + + # Create optimizers + actor_optim = torch.optim.Adam(actor.parameters(), lr=cfg.optim.lr) + critic_optim = torch.optim.Adam(critic.parameters(), lr=cfg.optim.lr) + + # Create logger + logger = None + if cfg.logger.backend: + exp_name = generate_exp_name("PPO", f"{cfg.logger.exp_name}_{cfg.env.env_name}") + logger = get_logger( + cfg.logger.backend, logger_name="ppo", experiment_name=exp_name + ) + + # Create test environment + test_env = make_env(cfg.env.env_name, device) + test_env.eval() + + # Main loop + collected_frames = 0 + num_network_updates = 0 + start_time = time.time() + pbar = tqdm.tqdm(total=cfg.collector.total_frames) + + sampling_start = time.time() + for i, data in enumerate(collector): + + log_info = {} + sampling_time = time.time() - sampling_start + frames_in_batch = data.numel() + collected_frames += frames_in_batch + pbar.update(data.numel()) + + # Get training rewards and episode lengths + episode_rewards = data["next", "episode_reward"][data["next", "done"]] + if len(episode_rewards) > 0: + episode_length = data["next", "step_count"][data["next", "done"]] + log_info.update( + { + "train/reward": episode_rewards.mean().item(), + "train/episode_length": episode_length.sum().item() + / len(episode_length), + } + ) + + losses = TensorDict({}, batch_size=[cfg.loss.ppo_epochs, num_mini_batches]) + training_start = time.time() + for j in range(cfg.loss.ppo_epochs): + + # Compute GAE + with torch.no_grad(): + data = adv_module(data) + data_reshape = data.reshape(-1) + + # Update the data buffer + data_buffer.extend(data_reshape) + + for k, batch in enumerate(data_buffer): + + # Linearly decrease the learning rate and clip epsilon + alpha = 1.0 + if cfg.optim.anneal_lr: + alpha = 1 - (num_network_updates / total_network_updates) + for group in actor_optim.param_groups: + group["lr"] = cfg.optim.lr * alpha + for group in critic_optim.param_groups: + group["lr"] = cfg.optim.lr * alpha + if cfg.loss.anneal_clip_epsilon: + loss_module.clip_epsilon.copy_(cfg.loss.clip_epsilon * alpha) + num_network_updates += 1 + + # Forward pass PPO loss + loss = loss_module(batch) + losses[j, k] = loss.select( + "loss_critic", "loss_entropy", "loss_objective" + ).detach() + critic_loss = loss["loss_critic"] + actor_loss = loss["loss_objective"] + loss["loss_entropy"] + + # Backward pass + actor_loss.backward() + critic_loss.backward() + + # Update the networks + actor_optim.step() + critic_optim.step() + actor_optim.zero_grad() + critic_optim.zero_grad() + + # Get training losses and times + training_time = time.time() - training_start + losses = losses.apply(lambda x: x.float().mean(), batch_size=[]) + for key, value in losses.items(): + log_info.update({f"train/{key}": value.item()}) + log_info.update( + { + "train/lr": alpha * cfg.optim.lr, + "train/sampling_time": sampling_time, + "train/training_time": training_time, + "train/clip_epsilon": alpha * cfg.loss.clip_epsilon, + } + ) + + # Get test rewards + with torch.no_grad(), set_exploration_type(ExplorationType.MODE): + if ((i - 1) * frames_in_batch) // cfg.logger.test_interval < ( + i * frames_in_batch + ) // cfg.logger.test_interval: + actor.eval() + eval_start = time.time() + test_rewards = eval_model( + actor, test_env, num_episodes=cfg.logger.num_test_episodes + ) + eval_time = time.time() - eval_start + log_info.update( + { + "eval/reward": test_rewards.mean(), + "eval/time": eval_time, + } + ) + actor.train() + + if logger: + for key, value in log_info.items(): + logger.log_scalar(key, value, collected_frames) + + collector.update_policy_weights_() + sampling_start = time.time() + + end_time = time.time() + execution_time = end_time - start_time + print(f"Training took {execution_time:.2f} seconds to finish") + + +if __name__ == "__main__": + main() diff --git a/examples/ppo/ppo_mujoco_halfcheetah.png b/examples/ppo/ppo_mujoco_halfcheetah.png deleted file mode 100644 index f168a5d40f339a8e124f2a532331f28422af8b6b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 911008 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⪚46+9Z$n?=C;K&~`VS2lJV2S@w(ii_T}1~ZWY0a#nNtWs_x zi_}tlc6d2+%hmU@Z9rekY3V%*E3QSbWgBbv&Dd{Bv=a-pI^J` zg&lI#ENa47)OF8dZ4qpp=A@ssTWvXUPq%YN*m!iBz1JYfXg+lh>jV3nd}zvELfEhRe3bt8rG_*6x+s$ph>0c46YIo+n9t+9-bQEO2zi-dlfX<*gCj zIwZ?5z^9&fiy@CbO2e()6TZHZYAIR4{8ak-V5sM9+-JG8{vwk*&=(b{*DiizrIauj z-N)`-X$Qp|(c(h$GewI>X<5^nvAn?z7SX_6{n6RUIJ^77Hx_3wUJgN8>Q3o#!l8CE zy}F^nTq#+IwJT9w!1Oi-8^2;L`FecX<+qEKsmO*D!bEZtI+OHm&=x|TDG!dtzxNvF zRxM<%qIvS`x9SK|nTtOQ!yJ1oL+GMxmQ_=y)1+hbS%z_MB=xNrn-g%!#(=jiHg}c) zm_E|nI@I2eD0GU`~ z$k-5Br|1`|q-v#gi=GkeA=8gV5j^5+Dmv?g-^UWm(N?ZL3}$nJX$k|^tJS%+z>+q3 zzaPAcUef7p6}B*a8~J&)M8e9=1cKC?Gr?X124EcN9KE*}O4w6?=%>XAPAo(%VGvqd zR5^^e3QI)UfZhq#Nsw2yMK@}h`=E>zLe`jd2y6QJYF9xEEzX_Kl~9V}#Yk84hPKjAsU_>N3Rtd{@>SD{O+G!EsJkI&WwaH_et9(-tBzJ&oAG&?K0@)0g=qR) zVoF0xJqJp^gcC-A51AG&TE94i@HvX;7**WIiy;lIQQw5(crKfemnwVn9GV^)ZHPXm zGiIKRz;Fo6e0j^M8D&M%yVLpZ z^XBtQR%aAODJDfG*IC!^FTso(Z(ABy0^P1sh^V*;7Sjnt{$w&A0h7_cGTRl=>4bnvrCwT&< z2;WD-#e?tCcL6eU{1pL(^|aIs*CVG5J}6Hv5e`fE6|dBEmZrmhE%fd8);RH~A-76} zeN>~Y(aybz%Bdp6uy$s03q(2gw>bSGn|=?Q8uIzFC1E#hZ|M!6ViMsbOBi~$__Aj; z(`5gzrh^aH7K15}Nw)4-m99*aCBP-*`;+AHI%`Yc-3bK5GPf+-yP951R#3$TgJ(@) zx|&dRN4f1fd)sw2Bx^oxWL*Jyx1OAD{n)m8B#eo;LDJ!pkl9Y=FnJ&yG8HUu7jWm< zW3~jO&2m8-@-zU^#m@1p9ch0mdRn33-UKgO$|=<1ytPFx1xK%$IYGKR>Vh3VW`#~R zTQ+^#&N}wOO522ljf0#~tIPtv?|$9ne&LeC1%@_vFgGY>|`4_Nm`YRGntjtkFB8Mt2BxCMUxKV-@ls9vI`ftgooM%92GGU_b97>&gEf0 zuf{HvH5peMrFQ0gk5w5U8c-0lY8dKwG@&&xcF{)!0}*y>;Dm~2u&;-|7FDx*?Dmf5 zm^zP%bB2$Yz3TRtje;!1e8qk}asAs2W*B11IDmHZ-86)Db22B6*9RfvMd=2saAX{k zF8ckV;+?kXna zqd=iUPI&p&);H+XgOxFdb1 zGe1Q&q4qs_-p#^lSWdmS*l;dFOy#sMQRAjNp_;5uWNC!5pysV$+fP+ovXlGyqF8RM zINNvty32!95gwXe&x z5b$GEs+Gd%8L%Ju%~`l$X@!sa{c30J4eJW5dE*v!Dc+dxn)0k5$~a}#>PbHT$WcUQ z(C27QOkl(yr;_Re#s!_Kp{JTvh<;fK+9tIo)+BXk${C^AmVE89OIR)~i!`+7>lXNLpyS7)0?gm>jl&(WK7-ocv1s;X_LT8=Q9L=f+ zO2^BglU>9&;Uo;7diU^YWQcdbZUXzEhSA^~^ne+46*Oz|{ne(evIfR&yK`?c53KOV z-alfrUA)+npI0XdK!e&HiR{aQ>f;*&>#Rwo8xS_fshO`z^xFFJ28W_Nt6BnB@H3j> z5E*dXbj}JPuD(bm0ULKryHamo7%N zM^5)eXC$dz+9B{`&#Ga!Xpq2)pNUawS)^3A>CA<;vacLGD}6pcpVMna>s~oekd}SM zMA=A9{qK!xggtA*$W((L?lp@}4L9a9;l40%qDs`+X57IB$2E%DjX8*S=8T;d_7GW$ zsD4Wq*UD&G=f@r;Sb$dx_V86i<_Yz&o?A?FiZg)L90trp_uMMJsR;E6Er*#1FFRiI zi&jRywe(-4xBz2L(T~3OHy(nAtK1(j`$2DeJI!O|y`Pgg(n^+I;cOk9ep2|(2odLy znkYp-c`QA{hskqp!=rOW{F`JoqJ;aFm79a2_<)YlD+A%YPfu8{whD}#dN0T&DI;ce zkB&_u0V2G5;#%6X){s7Jc-=~Mjw3R(+*lR2hb|H_S2Yym1N-$RoZK=N)Cn1vvJeU$ zd+8;U{X@QP;iCsG_-V~IO;|Y%SaS8O(ZPt4kc=g{4MXnI77-u&vS#;j6U~)~#>xUC zw zbW0R1Ag09X!d?M&@%7B4wDBXR+AFa-`KlkdiK#^j6lPVm1(ohuwBqk89=x%egdHOM z)Z3^S>e*Bsn>|O2lfsuv9U_$zznSW6zSCS<&?()QR2ejhtRLQTvaR;cLTvA=I$8I< zq-Od65v-s25j?+G76O=O2k2R2Mn;hn{+-589~gW?N#6>Xm$l{Sv2S<4Lq8#qxf=VN z=u?5s$WJq+%ZPyQkHxAtp-Vu6G(k;yEAR&Pd1b&-73AUSeeCCBET@tqz^&l*TPKOF zI3k_i6%W)6MqGg)!kqjSeq7H&5YGlMD#~uYB#aA;VwZE&lIQ1FX%+9 zaILI;$YV>$Wl*PB9{NI%jTHpX*t)eRk58IML$>B|dH`V^!fVt4iIAF0wyTS&r*(AR zd@-SrcpP{CM#3TeR|c;>HmOq}g+{}ktDSfISyc6rLh2<4o&4ai1Gm5d@lj2HlK{cQ zmyjtwQ`@c#>?~EXksDJK(wucv?6!00ZX=@4lNXgjhedv;X3wT_+26i5Q+4^|rPMc> zO3IV3D5Lw89kUKVrKGYC<`fmVJ^cAo{CmE``PCra^q8$|N#utIcDZ5%sfY6FYLX^S zl6_9}VW5^}Il8|j8X6LN^~t~y1qkoh-WVVF^uDc0PywkDsBy)G_$kXQc`P_`Se;VQ ze^yVbI*78#e3@KDm}^w>GJv zl;l!S``gUAB?Hl;-fwWL$1vE`k4I}YA}u&}7`!|EeKIuto4nk{QSKKmGkKECd|~50;-pSVg@%G+ zV0&4qVRgb=?%m)dE%Rvw;RXMM|92gZk3;$edK@-bLD~z;!{{&`7>CHvKrnzdU7b7Q zG3s8`#ENzwZ!btEX8z#VUGxC4yuSK;*LdsA<$bmIiJ^mhT`EK9dgG!z3HQmy6r&ovYRMbm(eZ6aZk3tPA^_Qcj+1KnRZLw^e%V5 z=qdjWCW6K6L;+r0dd3bNG;x<3zfOJ=d9#|*{A)kLfsXcmH&j{t?P%!qYcjMPD3F^P zI?OB@4v%kAj}%-?y`)dZpKp#|YZ}FIIChi8)phG`fQEin}`vyQjF z`4(|uSciT&b5Ec}R>aRfbviWY&Mlx6HN_6&)wz-mis@wDX}xGPF1Hk%C{CkMsiQuW z@v%&}U%1T@@Dg-U&?2M|t;m<-{zDU@LEl4)(VPnI5MNN?DX6DB=UA=ScjKXz#j@*G>cIwqWJe~s z$vP|UE5Z#mb8)P=h`t>zJ~sDL)l)~*Zh^EopW-YA>m6rP%>2m(SC92`CHtgDX!m2i z<*ln`ySxC1f_=yc`U1d;LP=M%`t%NbyUhPiWGP9~8PGuy~fj9_jXa$L}qrP9& zjLzt8TA2mM^-cP(*K1u%8}=OWpVzI=K9u`o^NQBhgew{}MXfg-fmBV&F&2l&vvzUF zg9Z~&E z=YK3rvhmD16>YWiiP8>=kMbKc$-Njc#Mq9W)5G}5q^#MEd@X~S-Z=b`Md^>4mAtCB zFgAHYZ`_W)+)H*wRnqLWzOiA1zv`=+_4sP@4B`9;RobOjOE0es93+?9q1ZNpc2!_9 z;kDI5;kCvWhub#QueBaDgf$sT*K>$JZI-X!==b=3FIn$)jnO$fx1-7v6$?Wq-ts4> zl$@JotARGz=g|b{79u;zYjgTexzju?{LEc9ARBgI(@2Cu|Asmdal-lzS7huLDn$Xx z>lgnp_DFgT8534+VfA(&<96CPsGYY`y5>`)oNv%uTQTiKj!eKikKgua{@|+P+<7dK zv|pL?3Ww~O*te+%6W_+<2KlX-A5BR;D`?>J?w8Xq2$D~t8`>ge$(J8}uF!B2aW^K{ zZJX8EQzU5^lzM)SOX{1tHU#0bZ)^}0?8z!PwV-Z&C}DfDrM{Bn!W`4ypFW>PQ6Tn= zdU$mg6bN2Gb|i@`izMay4$bt6egPn3?$tcA!<}rN^}iccz2A*`71)kHUNQHNV)-dj zOc%Cr&YsnTbJV)Sn?O++(qGtfB9WdIrJ&JUQqy$6&6&E&>w(qYx&$4VEN$WokbK3m_ZZDsaO%#?m) z??~BkO zuJ@KpMV@f?-oSYml^&wMudgM~ExeX1UKoUWigq<&H5Jv4!mE(=&@4jD600wSP~Ojs^xdeFys1r@36Nc={kN`2(#kt=d1S^`mm0Bt(eziZ^(^a z?6=pmDW;8V$$GmB;~>I{mF1#3TT_x)2pRn_{dd7MA}c!<;5++&vG>+-Rex{3sHlK~ zf*@TR38j%PVUtqQAs~%NgLDa7=`Lx6O-mz4*B0q+kZzD}Hn8J!x8L8LneUu4f6Sdb zbI+XDJ^aUBpS9NWJnLEY#Cu68#;vQlNWaIvE{FjXbY2icpS~huJ$zbB3Vw)yT0Jre zATRlDhI7K`Z%K7!G4CjL`eWJUV6JiCd53;1CZ=rzUA2t0;B>y@%C8$Y8>dq>0J%A_ z8XVs_F#d2s+G1$4SwXw9E@E=etV%nhnHVH#?6>$3Nkiv%mpk1m)1ev)bX=L9d6lWl zo@~o)L-%wIyydtuvv#m>>DG+BFLdgE{5)%Jc5IH`B&olUTzJ_d(2zClwOT#`JF>BI z;Se8LIBP&W!qwEu*N#e8i1d)ot~{F{~tC6J@#t}=s0HHt2zhyTd2XoIs}dY;>nl9Z9?E1v<6@Iq9GEO!tcD`B3byp zkJyQ8Q(aZzo8%@9D$S13-C7+bQOym0$C?IE;A3f}dx{A&yU~(&4|p*EpW}!3b+AzM z{q;>Wf!HWsoJ$dE*z1XeBZn?_0VzY?iA>t+;%~uOFGf#$C+}62Aw(>lxgN~qkmofB1(lS0YYs3Alq+PGVwuB&7wKG&p6zLq-s+b)|Q zv1)lNx>HNN)DFTQUmWWD?>SWWtVrR4`Yp2-QZ7HXn}dHbS_Vc7m6o@nUt&BNi-d@7 zw-vt<=Ck~{H%_oF59`V_Okijdv|Dz+HISKkNTQAEwO2I!TYJ{?R)W~e!b>!;5=dxk z=VlmrFd-57xT;5Zk?bI)VTbIEt9SGMl2QK}pUng{{EJyokKc;_%x_6c&$3LPIm*Hr za{|#C@}ppunSug^a^drDjPI8-ZLdxz_RXd}9VRN?oYr2x$WJlqUa4PNbLl0(SWmx- z)Aq^Nh1SCYDy!-}e0yI9n}8t5``nq@9VwYCUu6zPf2oan>`RY)!5A$lX_C0ehW9-Q z2AU6AsNcGbN>I_x7}ST%B7Rl+1xV}AYLcADmjNdzUmjc^zHp%@y>NorsW#}*G z2Wv`^)U4e>jx=in=139i=ahRW@Vt;(sTJz%IA#Pb1Y?q| zfVj_tB>XoTa_?N?8O?v;o)bv z{f($Y1wJ{UHuJ4a%xi}fF1A7+1GaJM4?orteri^Eyw@1TwP*js976fZ;yC39hP!V% z^&|$o`~%gAD=r@ap7-4EoMHF3(NDgNhW98;6w=7ok{jJu76!% z8;@a+Q+5)P&92;&hA8MO9n_n}#+7z(I$sxw*^YVg zkOj;u61?-vtvyQ~Dp|(`zV_)9`PR!MJXq?O=k-4AlNV@Jh7J5@tzSxRgicgei6=6^ z@Ek19(H2R>*V3~x<#kp4N!M@GbCan6Me2Qj_p1cVyu0_|EO5 zrk&mrQa4C&*-X-Pp-}HM=5#uH{UO7i_q{>fq0 zv#htY2b)*FW#AS#UaoD!P@ehJOC010;%H(2`^e#(`Q>u+QCp}u4NTTVdwuhJWedkr z$D3r@2zX)4JYeHD^4@bf)UJC*>TFO<=+gPio$rJ4XXEpqzdiG^;~?@cKUn3gh&YSP zzxlwDd>?WcOs+SJw>fIRr~KSv-b~*KeVWil(51PDbhq9B>`>_W^L9<@{XP|C_A&p) znxRf%j@3r0WC_vbBjE7}NfQBIu$#>w_4AI5WSq^`=iWBzjonT>9lj_P!EMJRD=&+} zhqSn$LVtrhzFyE_KZ)6+D1DU03HGy*@d9V#Mgk@}*6RJl>TGRlY497f>&-W;k|7h(k5DEHl z^ix8KW^+nm_n$j?#f%2=m

*OZoOyhB!jZEM@K%y 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%0D&JkXSHL(%FOs-o|3 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