protected Genometype ChangeWeightInGenome(Genometype genome, bool fullyRandom = false, float weightRange = 1f) { Genometype newGenome = genome.Clone(); for (int i = 0; i < newGenome.connectionGenes.Length; i++) { if (fullyRandom) { newGenome.connectionGenes[i].weight = Random.Range(-weightRange, weightRange); } else { newGenome.connectionGenes[i].weight += Random.Range(-weightRange, weightRange); } } return(newGenome); }
public void Reset() { m_genome = genome.Clone(); // for (int i = 0; i < m_genome.connectionGenes.Length; i++) // m_genome.nodeGenes[i].value = 0; }