private void Start() { newestNetwork = new NeuralNetworkCompact (initSettings.layers, initSettings.weightMutationChance, initSettings.weightMaxMutationRange); for (int i = 0; i < 10; i++) { newestNetwork.Mutate(); } SpawnAgents(); }
private void Update() { if (Input.GetKeyDown(KeyCode.Space)) { NeuralNetwork fittestNetwork = agents[0].NN; for (int i = 1; i < agents.Count; i++) { if (agents[i].NN.Fitness > fittestNetwork.Fitness) { fittestNetwork = agents[i].NN; } } NeuralNetworkCompact cachedNN; for (int i = 1; i < agents.Count; i++) { cachedNN = new NeuralNetworkCompact(fittestNetwork as NeuralNetworkCompact); cachedNN.Mutate(); agents[i].NN = cachedNN; } } }