From 6be9bc09420fec34235c395a40caa90969833192 Mon Sep 17 00:00:00 2001 From: Giovanni Briglia <93917046+Giovannibriglia@users.noreply.github.com> Date: Mon, 16 Sep 2024 09:54:26 +0200 Subject: [PATCH 1/6] introduce "n_lidar_rays_entities" and "n_lidar_rays_agents" --- vmas/scenarios/discovery.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/vmas/scenarios/discovery.py b/vmas/scenarios/discovery.py index ef57735c..77760e93 100644 --- a/vmas/scenarios/discovery.py +++ b/vmas/scenarios/discovery.py @@ -28,7 +28,17 @@ def make_world(self, batch_dim: int, device: torch.device, **kwargs): self._min_dist_between_entities = kwargs.pop("min_dist_between_entities", 0.2) self._lidar_range = kwargs.pop("lidar_range", 0.35) self._covering_range = kwargs.pop("covering_range", 0.25) + self.use_agent_lidar = kwargs.pop("use_agent_lidar", False) + if self.use_agent_lidar: + self.n_lidar_rays_entities = kwargs.pop("n_lidar_rays_entities", 15) + else: + if "n_lidar_rays_entities" in kwargs: + raise ValueError( + 'Cannot set "n_lidar_rays_entities" when "use_agent_lidar" is False.' + ) + self.n_lidar_rays_agents = kwargs.pop("n_lidar_rays_agents", 12) + self._agents_per_target = kwargs.pop("agents_per_target", 2) self.targets_respawn = kwargs.pop("targets_respawn", True) self.shared_reward = kwargs.pop("shared_reward", False) @@ -74,7 +84,7 @@ def make_world(self, batch_dim: int, device: torch.device, **kwargs): [ Lidar( world, - n_rays=15, + n_rays=self.n_lidar_rays_entities, max_range=self._lidar_range, entity_filter=entity_filter_targets, render_color=Color.GREEN, @@ -86,7 +96,7 @@ def make_world(self, batch_dim: int, device: torch.device, **kwargs): world, angle_start=0.05, angle_end=2 * torch.pi + 0.05, - n_rays=12, + n_rays=self.n_lidar_rays_agents, max_range=self._lidar_range, entity_filter=entity_filter_agents, render_color=Color.BLUE, From 92040026d84d527d33cee488485f8174f6295317 Mon Sep 17 00:00:00 2001 From: Giovanni Briglia <93917046+Giovannibriglia@users.noreply.github.com> Date: Mon, 16 Sep 2024 09:55:43 +0200 Subject: [PATCH 2/6] introduce "n_lidar_rays" --- vmas/scenarios/flocking.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/vmas/scenarios/flocking.py b/vmas/scenarios/flocking.py index 713b21e0..55d25731 100644 --- a/vmas/scenarios/flocking.py +++ b/vmas/scenarios/flocking.py @@ -20,6 +20,8 @@ def make_world(self, batch_dim: int, device: torch.device, **kwargs): n_obstacles = kwargs.pop("n_obstacles", 5) self._min_dist_between_entities = kwargs.pop("min_dist_between_entities", 0.15) + self.n_lidar_rays = kwargs.pop("n_rays", 12) + self.collision_reward = kwargs.pop("collision_reward", -0.1) self.dist_shaping_factor = kwargs.pop("dist_shaping_factor", 1) ScenarioUtils.check_kwargs_consumed(kwargs) @@ -51,7 +53,7 @@ def make_world(self, batch_dim: int, device: torch.device, **kwargs): sensors=[ Lidar( world, - n_rays=12, + n_rays=self.n_lidar_rays, max_range=0.2, entity_filter=goal_entity_filter, ) From 1fd0144935d845794b90a23374f45bda43ee8b71 Mon Sep 17 00:00:00 2001 From: Giovanni Briglia <93917046+Giovannibriglia@users.noreply.github.com> Date: Mon, 16 Sep 2024 09:56:20 +0200 Subject: [PATCH 3/6] introduce "n_lidar_rays" --- vmas/scenarios/navigation.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/vmas/scenarios/navigation.py b/vmas/scenarios/navigation.py index 9943215c..725da43e 100644 --- a/vmas/scenarios/navigation.py +++ b/vmas/scenarios/navigation.py @@ -41,6 +41,7 @@ def make_world(self, batch_dim: int, device: torch.device, **kwargs): self.lidar_range = kwargs.pop("lidar_range", 0.35) self.agent_radius = kwargs.pop("agent_radius", 0.1) self.comms_range = kwargs.pop("comms_range", 0) + self.n_lidar_rays = kwargs.pop("n_rays", 12) self.shared_rew = kwargs.pop("shared_rew", True) self.pos_shaping_factor = kwargs.pop("pos_shaping_factor", 1) @@ -115,7 +116,7 @@ def make_world(self, batch_dim: int, device: torch.device, **kwargs): [ Lidar( world, - n_rays=12, + n_rays=self.n_lidar_rays, max_range=self.lidar_range, entity_filter=entity_filter_agents, ), From f557b00cc5a975277737fe14c82416c53965a771 Mon Sep 17 00:00:00 2001 From: Giovanni Briglia <93917046+Giovannibriglia@users.noreply.github.com> Date: Tue, 17 Sep 2024 10:20:59 +0200 Subject: [PATCH 4/6] Update vmas/scenarios/discovery.py Co-authored-by: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> --- vmas/scenarios/discovery.py | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/vmas/scenarios/discovery.py b/vmas/scenarios/discovery.py index 77760e93..c3934503 100644 --- a/vmas/scenarios/discovery.py +++ b/vmas/scenarios/discovery.py @@ -30,13 +30,7 @@ def make_world(self, batch_dim: int, device: torch.device, **kwargs): self._covering_range = kwargs.pop("covering_range", 0.25) self.use_agent_lidar = kwargs.pop("use_agent_lidar", False) - if self.use_agent_lidar: - self.n_lidar_rays_entities = kwargs.pop("n_lidar_rays_entities", 15) - else: - if "n_lidar_rays_entities" in kwargs: - raise ValueError( - 'Cannot set "n_lidar_rays_entities" when "use_agent_lidar" is False.' - ) + self.n_lidar_rays_entities = kwargs.pop("n_lidar_rays_entities", 15) self.n_lidar_rays_agents = kwargs.pop("n_lidar_rays_agents", 12) self._agents_per_target = kwargs.pop("agents_per_target", 2) From 0b2b6551ba5c141e8efb8470f4360cc950c444cd Mon Sep 17 00:00:00 2001 From: Giovanni Briglia <93917046+Giovannibriglia@users.noreply.github.com> Date: Tue, 17 Sep 2024 10:21:10 +0200 Subject: [PATCH 5/6] Update vmas/scenarios/flocking.py Co-authored-by: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> --- vmas/scenarios/flocking.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vmas/scenarios/flocking.py b/vmas/scenarios/flocking.py index 55d25731..c15d3f24 100644 --- a/vmas/scenarios/flocking.py +++ b/vmas/scenarios/flocking.py @@ -20,7 +20,7 @@ def make_world(self, batch_dim: int, device: torch.device, **kwargs): n_obstacles = kwargs.pop("n_obstacles", 5) self._min_dist_between_entities = kwargs.pop("min_dist_between_entities", 0.15) - self.n_lidar_rays = kwargs.pop("n_rays", 12) + self.n_lidar_rays = kwargs.pop("n_lidar_rays", 12) self.collision_reward = kwargs.pop("collision_reward", -0.1) self.dist_shaping_factor = kwargs.pop("dist_shaping_factor", 1) From 34e68e9992033ce5a52dd04b75e04306c9bce5c6 Mon Sep 17 00:00:00 2001 From: Giovanni Briglia <93917046+Giovannibriglia@users.noreply.github.com> Date: Tue, 17 Sep 2024 10:21:16 +0200 Subject: [PATCH 6/6] Update vmas/scenarios/navigation.py Co-authored-by: Matteo Bettini <55539777+matteobettini@users.noreply.github.com> --- vmas/scenarios/navigation.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vmas/scenarios/navigation.py b/vmas/scenarios/navigation.py index 725da43e..cbef4234 100644 --- a/vmas/scenarios/navigation.py +++ b/vmas/scenarios/navigation.py @@ -41,7 +41,7 @@ def make_world(self, batch_dim: int, device: torch.device, **kwargs): self.lidar_range = kwargs.pop("lidar_range", 0.35) self.agent_radius = kwargs.pop("agent_radius", 0.1) self.comms_range = kwargs.pop("comms_range", 0) - self.n_lidar_rays = kwargs.pop("n_rays", 12) + self.n_lidar_rays = kwargs.pop("n_lidar_rays", 12) self.shared_rew = kwargs.pop("shared_rew", True) self.pos_shaping_factor = kwargs.pop("pos_shaping_factor", 1)