//Wird in einem bestimmten Interval aufgerufen public void FixedUpdate() { if (running) { int counter = 1; foreach (Individual individual in population.individuals) { NeuralNetwork nn = individual.nn; CharController cc = individual.GetGameObject().GetComponent <CharController>(); List <double> distances = cc.CalculateDistances(); //Bewege die Individuen falls sich noch nicht gecrashed sind if (!cc.IsCrashed()) { cc.Move((float)nn.ComputeOutput(distances)); //Falls die Individuen fertig sind bekommen sie einen Fitness skalierer if (cc.HasFinished()) { individual.fitness += ComputeFitness(cc.CalculateDistances()) * successMultiplier; } else { individual.fitness += ComputeFitness(cc.CalculateDistances()); } } counter += 1; } } }