|
12 | 12 | from vmas.simulator.core import Agent, Landmark, Sphere, World |
13 | 13 | from vmas.simulator.joints import Joint |
14 | 14 | from vmas.simulator.scenario import BaseScenario |
15 | | -from vmas.simulator.utils import Color |
| 15 | +from vmas.simulator.utils import Color, ScenarioUtils |
16 | 16 |
|
17 | 17 | if typing.TYPE_CHECKING: |
18 | 18 | from vmas.simulator.rendering import Geom |
@@ -47,19 +47,21 @@ def angle_to_vector(angle): |
47 | 47 |
|
48 | 48 | class Scenario(BaseScenario): |
49 | 49 | def make_world(self, batch_dim: int, device: torch.device, **kwargs): |
50 | | - self.joint_length = kwargs.get("joint_length", 0.5) |
51 | | - self.random_start_angle = kwargs.get("random_start_angle", False) |
52 | | - self.observe_joint_angle = kwargs.get("observe_joint_angle", False) |
53 | | - self.joint_angle_obs_noise = kwargs.get("joint_angle_obs_noise", 0.0) |
54 | | - self.asym_package = kwargs.get("asym_package", True) |
55 | | - self.mass_ratio = kwargs.get("mass_ratio", 5) |
56 | | - self.mass_position = kwargs.get("mass_position", 0.75) |
57 | | - self.max_speed_1 = kwargs.get("max_speed_1", None) # 0.1 |
58 | | - self.obs_noise = kwargs.get("obs_noise", 0.2) |
| 50 | + self.joint_length = kwargs.pop("joint_length", 0.5) |
| 51 | + self.random_start_angle = kwargs.pop("random_start_angle", False) |
| 52 | + self.observe_joint_angle = kwargs.pop("observe_joint_angle", False) |
| 53 | + self.joint_angle_obs_noise = kwargs.pop("joint_angle_obs_noise", 0.0) |
| 54 | + self.asym_package = kwargs.pop("asym_package", True) |
| 55 | + self.mass_ratio = kwargs.pop("mass_ratio", 5) |
| 56 | + self.mass_position = kwargs.pop("mass_position", 0.75) |
| 57 | + self.max_speed_1 = kwargs.pop("max_speed_1", None) # 0.1 |
| 58 | + self.obs_noise = kwargs.pop("obs_noise", 0.2) |
59 | 59 |
|
60 | 60 | # Reward |
61 | | - self.rot_shaping_factor = kwargs.get("rot_shaping_factor", 1) |
62 | | - self.energy_reward_coeff = kwargs.get("energy_reward_coeff", 0.08) |
| 61 | + self.rot_shaping_factor = kwargs.pop("rot_shaping_factor", 1) |
| 62 | + self.energy_reward_coeff = kwargs.pop("energy_reward_coeff", 0.08) |
| 63 | + |
| 64 | + ScenarioUtils.check_kwargs_consumed(kwargs) |
63 | 65 |
|
64 | 66 | # Make world |
65 | 67 | world = World( |
|
0 commit comments