Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question regarding the innovation record #19

Closed
plonerma opened this issue Mar 24, 2020 · 2 comments
Closed

Question regarding the innovation record #19

plonerma opened this issue Mar 24, 2020 · 2 comments

Comments

@plonerma
Copy link

Hey, I was wondering whether you actually used the data written to the innovation record at some point. In the current implementation it looks like you are just using it as a counter (and in a doc-string it is noted, that it might be used for checking whether an edge with the same node pair (src, dest) already exists. For getting a new node/edge id count from itertools could be used. For checking whether the node pair exists, a native python set might be more efficient.
Since the innovation record also stores whether a new node was generated and in which generation the innovation first occurred - it seems like you were planning to use that information somehow, but I can't reference in the code itself.
Did you use the information during debugging and analysis of executed experiments? If so, how did you utilize it?

@agaier
Copy link
Collaborator

agaier commented Mar 24, 2020

Hey, for WANNs I did not. The innovation numbers are only used for crossover (which I didn't used) and speciation (which I didn't use).

The ordering can be used in NEAT to set different coefficients for 'compatibility distance', so that when comparing two networks you can set different distances between networks if the different genes are older or younger (comparing to a direct ancestor might be closer than comparing to a cousin). In practice I don't know if I've ever seen anybody set them different -- it is an interesting idea, but with all of the hyperparameters already in NEAT we really don't need any more.

@plonerma
Copy link
Author

Yep, that makes sense. Thanks for the answer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants