In mutation_add_connection, there is no check whether the connection already exists. In Organism::get_weights, we only use the weight of one connection, so any other similar connections are useless.
Bias can only be positive. I'm not sure if this is good? I also noticed in Ctrnn that we take the negative bias, rather than the positive as in the paper. So practically we always have a negative bias.
What about having both bias: f64 and weight: f64 in Gene (instead of having a bias and a weight type of gene)?
Ctrnn
Shouldn't tau be bigger than 1.0? I think it sort of represents how fast y decays. And when it is 1.0, y decays in only one timestep. (you can verify this by looking at how we calculate the new y (however look at my commit where I fixed a small thing in Ctrnn)
Organism
andGene
mutation_add_connection
, there is no check whether the connection already exists. InOrganism::get_weights
, we only use the weight of one connection, so any other similar connections are useless.Ctrnn
that we take the negative bias, rather than the positive as in the paper. So practically we always have a negative bias.bias: f64
andweight: f64
inGene
(instead of having a bias and a weight type of gene)?Ctrnn
1.0
? I think it sort of represents how fasty
decays. And when it is1.0
,y
decays in only one timestep. (you can verify this by looking at how we calculate the new y (however look at my commit where I fixed a small thing in Ctrnn)