gym-examples 3.0.10__py3-none-any.whl → 3.0.12__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
gym_examples/__init__.py CHANGED
@@ -6,4 +6,4 @@ register(
6
6
  max_episode_steps=50,
7
7
  )
8
8
 
9
- __version__ = "3.0.10"
9
+ __version__ = "3.0.12"
@@ -83,6 +83,12 @@ class WSNRoutingEnv(gym.Env):
83
83
  self.packet_latency = np.zeros(self.n_sensors) # Latency for each packet
84
84
  self.total_packets_sent_by_sensors = 0
85
85
 
86
+ self.network_throughput = None
87
+ self.energy_efficiency = None
88
+ self.packet_delivery_ratio = None
89
+ self.network_lifetime = None
90
+ self.average_latency = None
91
+
86
92
  return self._get_obs()
87
93
 
88
94
  def step(self, actions):
@@ -167,14 +173,19 @@ class WSNRoutingEnv(gym.Env):
167
173
  if self.first_node_dead_time is None and np.any(self.remaining_energy <= 0):
168
174
  self.first_node_dead_time = self.steps
169
175
 
176
+ self.get_metrics()
177
+
170
178
  return self._get_obs(), rewards, dones, {}
171
179
 
172
180
  def _get_obs(self):
181
+
182
+ performance = self.get_metrics()
183
+
173
184
  return [{'remaining_energy': np.array([e]),
174
185
  'consumption_energy': np.array([initial_energy - e]),
175
186
  'sensor_positions': p,
176
- 'number_of_packets': np.array([d]),
177
- 'statistics': self.get_metrics()} for e, p, d in zip(self.remaining_energy, self.sensor_positions, self.number_of_packets)]
187
+ 'number_of_packets': np.array([d])
188
+ } for e, p, d in zip(self.remaining_energy, self.sensor_positions, self.number_of_packets)]
178
189
 
179
190
  def _get_observation_space(self):
180
191
  return Dict({
@@ -330,20 +341,20 @@ class WSNRoutingEnv(gym.Env):
330
341
 
331
342
  def get_metrics(self):
332
343
  # Calculate network throughput
333
- network_throughput = self.packets_delivered / self.steps if self.steps > 0 else 0
344
+ self.network_throughput = self.packets_delivered / self.steps if self.steps > 0 else 0
334
345
  # Calculate energy efficiency
335
- energy_efficiency = self.packets_delivered / self.total_energy_consumed if self.total_energy_consumed > 0 else 0
346
+ self.energy_efficiency = self.packets_delivered / self.total_energy_consumed if self.total_energy_consumed > 0 else 0
336
347
  # Calculate packet delivery ratio
337
- packet_delivery_ratio = self.packets_delivered / self.total_packets_sent_by_sensors if self.total_packets_sent_by_sensors > 0 else 0
348
+ self.packet_delivery_ratio = self.packets_delivered / self.total_packets_sent_by_sensors if self.total_packets_sent_by_sensors > 0 else 0
338
349
  # Calculate network lifetime
339
- network_lifetime = self.first_node_dead_time if self.first_node_dead_time is not None else self.steps
350
+ self.network_lifetime = self.first_node_dead_time if self.first_node_dead_time is not None else self.steps
340
351
  # Calculate average latency
341
- average_latency = self.total_latency / self.packets_delivered if self.packets_delivered > 0 else 0
352
+ self.average_latency = self.total_latency / self.packets_delivered if self.packets_delivered > 0 else 0
342
353
 
343
354
  return {
344
- "network_throughput": network_throughput,
345
- "energy_efficiency": energy_efficiency,
346
- "packet_delivery_ratio": packet_delivery_ratio,
347
- "network_lifetime": network_lifetime,
348
- "average_latency": average_latency
355
+ "network_throughput": self.network_throughput,
356
+ "energy_efficiency": self.energy_efficiency,
357
+ "packet_delivery_ratio": self.packet_delivery_ratio,
358
+ "network_lifetime": self.network_lifetime,
359
+ "average_latency": self.average_latency
349
360
  }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: gym-examples
3
- Version: 3.0.10
3
+ Version: 3.0.12
4
4
  Summary: A custom environment for multi-agent reinforcement learning focused on WSN routing.
5
5
  Home-page: https://github.com/gedji/CODES.git
6
6
  Author: Georges Djimefo
@@ -0,0 +1,7 @@
1
+ gym_examples/__init__.py,sha256=kcZhlTThwzjMoXcErF9Rpjo73RBaXYxCJXEKmNW1Stw,193
2
+ gym_examples/envs/__init__.py,sha256=lgMe4pyOuUTgTBUddM0iwMlETsYTwFShny6ifm8PGM8,53
3
+ gym_examples/envs/wsn_env.py,sha256=LcfTSNY6AKL-gW5adcmS9T2aOxerBuFPl8AVGaeRH50,17904
4
+ gym_examples-3.0.12.dist-info/METADATA,sha256=nT5ITiPaKcPghJtG2m_47AHIE7f6olO5pVxB-xPNGNQ,411
5
+ gym_examples-3.0.12.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
6
+ gym_examples-3.0.12.dist-info/top_level.txt,sha256=rJRksoAF32M6lTLBEwYzRdo4PgtejceaNnnZ3HeY_Rk,13
7
+ gym_examples-3.0.12.dist-info/RECORD,,
@@ -1,7 +0,0 @@
1
- gym_examples/__init__.py,sha256=RBpA4jzbyv6IceDsSXiR6P-U6Aj3OvlZ7eCOQr7F7j0,193
2
- gym_examples/envs/__init__.py,sha256=lgMe4pyOuUTgTBUddM0iwMlETsYTwFShny6ifm8PGM8,53
3
- gym_examples/envs/wsn_env.py,sha256=xg4nJw0EyK3_Vt4vJpyhEIG44FnpFPSOiSsQM1KxDt8,17613
4
- gym_examples-3.0.10.dist-info/METADATA,sha256=xmZDjTODWMEFRTJHb9bQPAzvMw9NP7yYRWFIfFKqQCA,411
5
- gym_examples-3.0.10.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
6
- gym_examples-3.0.10.dist-info/top_level.txt,sha256=rJRksoAF32M6lTLBEwYzRdo4PgtejceaNnnZ3HeY_Rk,13
7
- gym_examples-3.0.10.dist-info/RECORD,,