evonet 0.1.0.dev10__tar.gz → 0.1.0.dev12__tar.gz

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.
Files changed (27) hide show
  1. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/PKG-INFO +1 -1
  2. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet/core.py +11 -4
  3. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet.egg-info/PKG-INFO +1 -1
  4. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/pyproject.toml +1 -1
  5. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/LICENSE +0 -0
  6. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/README.md +0 -0
  7. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet/__init__.py +0 -0
  8. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet/activation.py +0 -0
  9. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet/connection.py +0 -0
  10. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet/core_mit_plot_simple.py +0 -0
  11. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet/enums.py +0 -0
  12. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet/io.py +0 -0
  13. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet/layer.py +0 -0
  14. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet/mutation.py +0 -0
  15. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet/neuron.py +0 -0
  16. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet/serialization.py +0 -0
  17. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet/utils.py +0 -0
  18. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet/visualize.py +0 -0
  19. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet.egg-info/SOURCES.txt +0 -0
  20. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet.egg-info/dependency_links.txt +0 -0
  21. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet.egg-info/requires.txt +0 -0
  22. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/evonet.egg-info/top_level.txt +0 -0
  23. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/setup.cfg +0 -0
  24. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/tests/test_activation.py +0 -0
  25. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/tests/test_core.py +0 -0
  26. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/tests/test_nnet_io_and_forward.py +0 -0
  27. {evonet-0.1.0.dev10 → evonet-0.1.0.dev12}/tests/test_recurrent_dynamics.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: evonet
3
- Version: 0.1.0.dev10
3
+ Version: 0.1.0.dev12
4
4
  Summary: Evolvable neural network core for integration with EvoLib
5
5
  Author-email: EvoLib <evolib@dismail.de>
6
6
  License: MIT License
@@ -171,14 +171,17 @@ class Nnet:
171
171
  if recurrent and not skip_connections:
172
172
  if RecurrentKind.DIRECT in recurrent:
173
173
  for n in new_neurons:
174
- if n.role == NeuronRole.HIDDEN:
175
- self.add_connection(
176
- n, n, weight=weight, conn_type=ConnectionType.RECURRENT
177
- )
174
+ if n.role != NeuronRole.HIDDEN:
175
+ continue # No recurrence on INPUT or OUTPUT
176
+ self.add_connection(
177
+ n, n, weight=weight, conn_type=ConnectionType.RECURRENT
178
+ )
178
179
 
179
180
  if RecurrentKind.LATERAL in recurrent:
180
181
  full_layer = list(self.layers[layer_idx].neurons)
181
182
  for src in full_layer:
183
+ if src.role != NeuronRole.HIDDEN:
184
+ continue # No recurrence on INPUT or OUTPUT
182
185
  for dst in new_neurons:
183
186
  if src is not dst:
184
187
  self.add_connection(
@@ -190,6 +193,8 @@ class Nnet:
190
193
 
191
194
  if RecurrentKind.INDIRECT in recurrent:
192
195
  for src in new_neurons:
196
+ if src.role != NeuronRole.HIDDEN:
197
+ continue # No recurrence on INPUT or OUTPUT
193
198
  for lower_layer in self.layers[1:layer_idx]:
194
199
  for dst in lower_layer.neurons:
195
200
  self.add_connection(
@@ -200,6 +205,8 @@ class Nnet:
200
205
  )
201
206
  for higher_layer in self.layers[layer_idx + 1 :]:
202
207
  for src in higher_layer.neurons:
208
+ if src != NeuronRole.HIDDEN:
209
+ continue # No recurrence on INPUT or OUTPUT
203
210
  for dst in new_neurons:
204
211
  self.add_connection(
205
212
  src,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: evonet
3
- Version: 0.1.0.dev10
3
+ Version: 0.1.0.dev12
4
4
  Summary: Evolvable neural network core for integration with EvoLib
5
5
  Author-email: EvoLib <evolib@dismail.de>
6
6
  License: MIT License
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "evonet"
7
- version = "0.1.0.dev10"
7
+ version = "0.1.0.dev12"
8
8
  description = "Evolvable neural network core for integration with EvoLib"
9
9
  authors = [
10
10
  { name = "EvoLib", email = "evolib@dismail.de" }
File without changes
File without changes
File without changes
File without changes