I'm working with NEAT right now and I have a few questions regarding the numbering of newly created nodes. My first assumption was that whenever a certain connection (identified by innovation number for example) is split, it should be split into the same two connections and create the same new node. But this seems to produce weird results when certain conditions are met.
I have a very basic example, let's say my starting net (with inputs 1&2, ouput 3) had been composed of these connections:
(1,3), (2,3)
Let's say the first connection has been split to create this net:
(1,4), (4,3), (2,3)
And then the (1,3) connection would be added back in to form this:
(1,4), (4,3), (2,3), (1,3)
If the (1,3) connection were split again, it shouldn't be split into (1,4) & (4,3) again, right? But instead into something like (1,5) & (5,3).
Does this mean, that whenever a connection is split a completely new node number must be given to the new node?
Wouldn't this cause a massive, artificial explosion in the number of species because basicly every splittin of a connection creates two completely new connections?