nnaisense / evotorch

Advanced evolutionary computation library built directly on top of PyTorch, created at NNAISENSE.
https://evotorch.ai
Apache License 2.0
997 stars 62 forks source link

neuroevolution - activation functions, prefab substructures, how much of PyTorch api is available ? #83

Open gminorcoles opened 1 year ago

gminorcoles commented 1 year ago

Hi, I did a lot of neuroevolution and evolutionary computing work long ago but I have not attempted it in the PyTorch world. Is there somewhere in the documentation or the code where I can focus on what the possible ingredients of evolution will be? In NEAT there was a limited set of operators or structural components which could comprise a solution.

Also is it possible to add evolved or hand-coded structures to the set of structures which can be incorporated into the evolutionary process?

Also where can I find out more about the weights or other evolved parameters? Are all these lost after evolution and the individual has to be retrained? It might be good to be able to fine tune an evolved individual but since these are prototypes I understand that might not be the intention.

Also is there a grammar for the string representation of a network? I am interested in compressing individuals to speed the search and it seems that a string or symbolic representation might work, and also I would like to try to incorporate guided evolution every few generations using a fine-tuned LLM and the string representation might provide a shortcut for this.