gym-examples 2.0.77__py3-none-any.whl → 2.0.79__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.77"
9
+ __version__ = "2.0.79"
@@ -130,10 +130,10 @@ class WSNRoutingEnv(gym.Env):
130
130
  rewards[i] = final_reward
131
131
 
132
132
  # 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]
133
- rewards = [0.5 * r + 0.5 * (self.network_reward_consumption_energy() + self.network_reward_dispersion_remaining_energy()) for r in rewards]
133
+ # rewards = [0.5 * r + 0.5 * (self.network_reward_consumption_energy() + self.network_reward_dispersion_remaining_energy()) for r in rewards]
134
134
 
135
135
  # Only proceed if network consumption energy is not zero to avoid unnecessary list comprehension
136
- self.rewards_individual = [r for r in self.rewards_individual if ((r != 0) and (r[3] < 1))]
136
+ self.rewards_individual = [r for r in self.rewards_individual if ((r != 0) and (r[len(r) -1] < 1))]
137
137
 
138
138
  # 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))]
139
139
  for i in range(self.n_sensors):
@@ -239,16 +239,26 @@ class WSNRoutingEnv(gym.Env):
239
239
 
240
240
  return np.clip(1 - normalized_total_energy, 0, 1)
241
241
 
242
- def compute_reward_dispersion_remaining_energy(self):
242
+ def compute_reward_dispersion_remaining_energy(self,i):
243
243
  '''
244
- Compute the reward based on the standard deviation of the remaining energy
244
+ Compute the reward based on the difference between the remaining energy of the sensor i and the mean remaining energy of all sensors
245
245
  '''
246
- dispersion_remaining_energy = np.std(self.remaining_energy)
247
- # Normalize the standard deviation of the remaining energy
248
- max_dispersion_remaining_energy = initial_energy / 2 # maximum standard deviation of the remaining energy if n_sensors is even
249
- normalized_dispersion_remaining_energy = dispersion_remaining_energy / max_dispersion_remaining_energy
250
-
251
- return np.clip(1 - normalized_dispersion_remaining_energy, 0, 1)
246
+ difference = np.abs(self.remaining_energy[i] - np.mean(self.remaining_energy))
247
+ # Normalize the difference
248
+ normalized_difference = difference / initial_energy
249
+
250
+ return np.clip(1 - normalized_difference, 0, 1)
251
+
252
+ # def compute_reward_dispersion_remaining_energy(self):
253
+ # '''
254
+ # Compute the reward based on the standard deviation of the remaining energy
255
+ # '''
256
+ # dispersion_remaining_energy = np.std(self.remaining_energy)
257
+ # # Normalize the standard deviation of the remaining energy
258
+ # max_dispersion_remaining_energy = initial_energy / 2 # maximum standard deviation of the remaining energy if n_sensors is even
259
+ # normalized_dispersion_remaining_energy = dispersion_remaining_energy / max_dispersion_remaining_energy
260
+
261
+ # return np.clip(1 - normalized_dispersion_remaining_energy, 0, 1)
252
262
 
253
263
  def compute_reward_number_of_packets(self, action):
254
264
  '''
@@ -268,13 +278,13 @@ class WSNRoutingEnv(gym.Env):
268
278
  '''
269
279
  reward_angle = self.compute_reward_angle(i, action)
270
280
  reward_distance = self.compute_reward_distance(i, action)
271
- reward_consumption_energy = self.compute_reward_consumption_energy(i, action)
272
- # reward_dispersion_remaining_energy = self.compute_reward_dispersion_remaining_energy()
281
+ # reward_consumption_energy = self.compute_reward_consumption_energy(i, action)
282
+ reward_dispersion_remaining_energy = self.compute_reward_dispersion_remaining_energy(i)
273
283
  reward_number_of_packets = self.compute_reward_number_of_packets(action)
274
284
 
275
285
  # return [reward_angle, reward_distance, reward_consumption_energy, reward_dispersion_remaining_energy, reward_number_of_packets]
276
286
  # return [reward_angle, reward_distance, reward_consumption_energy, reward_number_of_packets]
277
- return [reward_angle, reward_distance, reward_number_of_packets]
287
+ return [reward_angle, reward_distance, reward_dispersion_remaining_energy, reward_number_of_packets]
278
288
 
279
289
  def network_reward_dispersion_remaining_energy(self):
280
290
  '''
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: gym-examples
3
- Version: 2.0.77
3
+ Version: 2.0.79
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=60kE6HFM4-uZSatHGKbkRoOAaZQGRuOZAcrz7NDyiPI,193
2
+ gym_examples/envs/__init__.py,sha256=lgMe4pyOuUTgTBUddM0iwMlETsYTwFShny6ifm8PGM8,53
3
+ gym_examples/envs/wsn_env.py,sha256=SyD3DwXcsuSpLHxZhaVFnL3oe4KbdvQvP-bm8qIquhs,16706
4
+ gym_examples-2.0.79.dist-info/METADATA,sha256=Yq5hVewL-_sXk8r7ATRsBENfobdaCx5qLp6jBvwNkn4,411
5
+ gym_examples-2.0.79.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
6
+ gym_examples-2.0.79.dist-info/top_level.txt,sha256=rJRksoAF32M6lTLBEwYzRdo4PgtejceaNnnZ3HeY_Rk,13
7
+ gym_examples-2.0.79.dist-info/RECORD,,
@@ -1,7 +0,0 @@
1
- gym_examples/__init__.py,sha256=SnKbKQ-A6nJGr_zxdY0mkzTXHxF2i5hRV_V-co2F0CE,193
2
- gym_examples/envs/__init__.py,sha256=lgMe4pyOuUTgTBUddM0iwMlETsYTwFShny6ifm8PGM8,53
3
- gym_examples/envs/wsn_env.py,sha256=Fct3VXMPwNUTZyLAAPGGq1RLG282VKnohIds_d1qqv8,16166
4
- gym_examples-2.0.77.dist-info/METADATA,sha256=bd1lNeat-U4vFn2q_k6u1Ve_RycnBwsCmfdOGKZcCnI,411
5
- gym_examples-2.0.77.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
6
- gym_examples-2.0.77.dist-info/top_level.txt,sha256=rJRksoAF32M6lTLBEwYzRdo4PgtejceaNnnZ3HeY_Rk,13
7
- gym_examples-2.0.77.dist-info/RECORD,,