gym-examples 2.0.151__py3-none-any.whl → 2.0.153__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__ = "2.0.151"
9
+ __version__ = "2.0.153"
@@ -68,14 +68,6 @@ class WSNRoutingEnv(gym.Env):
68
68
 
69
69
 
70
70
  def reset(self):
71
- # print individual rewards
72
-
73
- # if self.rewards_individual != []:
74
- # print("\n=================================================")
75
- # print(f"Episode: {self.episode_count}")
76
- # print(f"Rewards: {self.rewards_individual}")
77
- # print("=================================================\n")
78
- # Initialize remaining energy of each sensor to initial_energy joule
79
71
  self.sensor_positions = np.random.rand(self.n_sensors, 2) * (upper_bound - lower_bound) + lower_bound
80
72
  self.distance_to_base = np.linalg.norm(self.sensor_positions - base_station_position, axis=1)
81
73
  self.remaining_energy = np.ones(self.n_sensors) * initial_energy
@@ -85,7 +77,6 @@ class WSNRoutingEnv(gym.Env):
85
77
 
86
78
  def step(self, actions):
87
79
  rewards = [0] * self.n_sensors
88
- # self.rewards_individual = [0] * self.n_sensors
89
80
  dones = [False] * self.n_sensors
90
81
  for i, action in enumerate(actions):
91
82
 
@@ -131,17 +122,11 @@ class WSNRoutingEnv(gym.Env):
131
122
  # Calculate final reward
132
123
  rewards_individual = torch.tensor(rewards[i], dtype=torch.double)
133
124
  final_reward = net(rewards_individual)
134
- # self.rewards_individual[i] = rewards[i]
135
125
  # final_reward = np.sum(rewards[i])
136
126
  # weights = np.ones(self.n_sensors, dtype=int)
137
127
  # final_reward = np.sum(reward * weight for reward, weight in zip(rewards[i], weights))
138
128
  rewards[i] = final_reward
139
- # rewards = [0.5 * r + 0.5 * (1/self.n_sensors) * (self.network_reward_consumption_energy() + self.network_reward_dispersion_remaining_energy()) for r in rewards]
140
- # rewards = [0.5 * r + 0.5 * (self.network_reward_consumption_energy() + self.network_reward_dispersion_remaining_energy()) for r in rewards]
141
- # Only proceed if network consumption energy is not zero to avoid unnecessary list comprehension
142
- # self.rewards_individual = [r for r in self.rewards_individual if ((r != 0) and (r[len(r) -1] < 1))]
143
129
  # rewards = np.mean(rewards)
144
- # self.rewards_individual = [{"ind": r, "net_consumption_energy": self.network_reward_consumption_energy(), "net_dispersion_energy": self.network_reward_dispersion_remaining_energy()} for r in self.rewards_individual if ((r != 0) and (self.network_reward_consumption_energy() != 0))]
145
130
  for i in range(self.n_sensors):
146
131
  if (self.remaining_energy[i] <= 0) or (self.number_of_packets[i] <= 0):
147
132
  dones[i] = True
@@ -242,16 +227,6 @@ class WSNRoutingEnv(gym.Env):
242
227
 
243
228
  return np.clip(1 - normalized_total_energy, 0, 1)
244
229
 
245
- # def compute_reward_dispersion_remaining_energy(self,i):
246
- # '''
247
- # Compute the reward based on the difference between the remaining energy of the sensor i and the mean remaining energy of all sensors
248
- # '''
249
- # difference = np.abs(self.remaining_energy[i] - np.mean(self.remaining_energy))
250
- # # Normalize the difference
251
- # normalized_difference = difference / initial_energy
252
-
253
- # return np.clip(1 - normalized_difference, 0, 1)
254
-
255
230
  def compute_reward_dispersion_remaining_energy(self):
256
231
  '''
257
232
  Compute the reward based on the standard deviation of the remaining energy
@@ -286,10 +261,7 @@ class WSNRoutingEnv(gym.Env):
286
261
  reward_number_of_packets = self.compute_reward_number_of_packets(action)
287
262
 
288
263
  return [reward_angle, reward_consumption_energy, reward_dispersion_remaining_energy, reward_number_of_packets]
289
- # return [reward_angle, reward_distance, reward_consumption_energy, reward_number_of_packets]
290
- # return [reward_angle, reward_distance, reward_dispersion_remaining_energy, reward_number_of_packets]
291
- # return [reward_angle, reward_distance, reward_consumption_energy, reward_dispersion_remaining_energy]
292
-
264
+
293
265
  def network_reward_dispersion_remaining_energy(self):
294
266
  '''
295
267
  Compute the reward based on the standard deviation of the remaining energy at the network level
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: gym-examples
3
- Version: 2.0.151
3
+ Version: 2.0.153
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=tnaWTeJKitwtuzO1QwF_VKsalcOKqW_MO7xeQ8ZB4IU,194
2
+ gym_examples/envs/__init__.py,sha256=lgMe4pyOuUTgTBUddM0iwMlETsYTwFShny6ifm8PGM8,53
3
+ gym_examples/envs/wsn_env.py,sha256=-PySvM8tO8y9f05zdI3d-vbY-7uFEni50gWvAxQlWoU,15187
4
+ gym_examples-2.0.153.dist-info/METADATA,sha256=FYzaMSXAjQsxCpJl7Zsd6D5QAhZw4ddVZqg9xNG90IY,412
5
+ gym_examples-2.0.153.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
6
+ gym_examples-2.0.153.dist-info/top_level.txt,sha256=rJRksoAF32M6lTLBEwYzRdo4PgtejceaNnnZ3HeY_Rk,13
7
+ gym_examples-2.0.153.dist-info/RECORD,,
@@ -1,7 +0,0 @@
1
- gym_examples/__init__.py,sha256=I77PF4BWS2EhkDtblBd1gJeEf5eG2xexbSBTloWiVOo,194
2
- gym_examples/envs/__init__.py,sha256=lgMe4pyOuUTgTBUddM0iwMlETsYTwFShny6ifm8PGM8,53
3
- gym_examples/envs/wsn_env.py,sha256=q1MTuPzqUkyp5Gl9iP7a412pLyB01DosWeSgpF7PP8g,17380
4
- gym_examples-2.0.151.dist-info/METADATA,sha256=p5pEMVQeeUi9I9w-N5Cp38F_waraaLuUfy5ALTLCUSY,412
5
- gym_examples-2.0.151.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
6
- gym_examples-2.0.151.dist-info/top_level.txt,sha256=rJRksoAF32M6lTLBEwYzRdo4PgtejceaNnnZ3HeY_Rk,13
7
- gym_examples-2.0.151.dist-info/RECORD,,