neat-python
neat-python copied to clipboard
Can't find actual usage of "activation_mutate_rate" in the repository
I was looking for code where activation_mutate_rate IS USED to check what is it actually doing, but when I started the search in the repository I found no code where it was used. Only files which were cited in tests and examples. The same problem with aggregation_default.
Am I wrong or these parameters are not working at all?
I don't know what's in the code =) i just tested
change config file
activation_default = sigmoid
activation_options = abs clamped cube exp gauss hat identity inv log relu sigmoid sin softplus square tanh
activation_mutate_rate = 0.10
aggregation_default = sum
aggregation_options = sum product min max mean median maxabs
aggregation_mutate_rate = 0.10
**enabled_default = False**
Result
****** Running generation 10 ******
Population's average fitness: 48.92647 stdev: 58.04804
Best fitness: 465.59000 - size: (4, 5) - species 2 - id 25649
Best individual in generation 10 meets fitness threshold - complexity: (4, 5)
Key: 25649
Fitness: 465.59
Nodes:
0 DefaultNodeGene(key=0, bias=-0.04670303683974604, response=1.0, **activation=inv, aggregation=sum)**
1 DefaultNodeGene(key=1, bias=3.676808386291425, response=1.0, **activation=hat, aggregation=max)**
717 DefaultNodeGene(key=717, bias=-0.3388114611388613, response=1.0, **activation=sigmoid, aggregation=max)**
4635 DefaultNodeGene(key=4635, bias=0.3790316257918874, response=1.0, **activation=sigmoid, aggregation=sum)**
Connections:
DefaultConnectionGene(key=(-4, 0), weight=-4.902753585779983, enabled=True)
DefaultConnectionGene(key=(-4, 1), weight=2.2233849709628313, enabled=False)
DefaultConnectionGene(key=(-3, 0), weight=0.1778200566204472, enabled=False)
DefaultConnectionGene(key=(-3, 1), weight=0.13752071279488415, enabled=False)
DefaultConnectionGene(key=(-2, 0), weight=-0.7774644217394712, enabled=True)
DefaultConnectionGene(key=(-1, 717), weight=2.191998100159211, enabled=False)
DefaultConnectionGene(key=(-1, 4635), weight=2.099197913343026, enabled=True)
DefaultConnectionGene(key=(717, 1), weight=0.8789818087483005, enabled=True)
DefaultConnectionGene(key=(4635, 717), weight=1.6229693271726044, enabled=True
When change config tp
**activation_mutate_rate = 0.0**
**aggregation_mutate_rate = 0.**
**enabled_default = False**
Result
****** Running generation 7 ******
Population's average fitness: 28.78024 stdev: 40.43288
Best fitness: 466.64000 - size: (4, 5) - species 1 - id 18462
Best individual in generation 7 meets fitness threshold - complexity: (4, 5)
Key: 18462
Fitness: 466.64
Nodes:
0 DefaultNodeGene(key=0, bias=0.7504180779257384, response=1.0, **activation=sigmoid, aggregation=sum**)
1 DefaultNodeGene(key=1, bias=-0.9202115238111772, response=1.0, **activation=sigmoid, aggregation=sum**)
265 DefaultNodeGene(key=265, bias=1.5937972640538778, response=1.0, **activation=sigmoid, aggregation=sum**)
818 DefaultNodeGene(key=818, bias=0.3289761399347336, response=1.0, **activation=sigmoid, aggregation=sum**)
Conclusion activation_mutate_rate and aggregation_mutate_rate used only if enabled_default = False and mutate rates>0.0
What if the default is set to random?