HyperCodec / neat

Crate for implementing NeuroEvolution of Augmenting Topologies
MIT License
3 stars 0 forks source link

[TODO] Combine `NeuralNetwork` and `NeuralNetworkTopology` #63

Open HyperCodec opened 1 month ago

HyperCodec commented 1 month ago

The original idea with having these split off was to have the NeuralNetwork struct inputs have smart pointers to the layer before, but this never really was implemented (and is likely impossible to implement without big performance costs). Right now it is just a bunch of useless cloning to access certain functions.

HyperCodec commented 1 month ago

The state being introduced to the DNA is kind of annoying, but with NNTSerde being a thing, it isn't really an issue for serialization. Would further complicate #29 though.

HyperCodec commented 1 month ago

This would also be a good chance to change the mutation_rate and mutation_passes API, although not sure how I'd do that in a helpful/convenient way just yet.