def eval_genome(genome, config): net = neat.nn.FeedForwardNetwork.create(genome, config) fitnesses = [] for runs in range(runs_per_net): sim = Simulator(testNum=runs) # Run the given simulation for up to num_steps time steps. while sim.shouldContinue(): inputs = sim.getInputActivations() action = net.activate(inputs) # Apply action to the simulated cart-pole sim.update(action[0], action[1]) fitnesses.append(sim.getFitness()) # The genome's fitness is its worst performance across all runs. return statistics.mean(fitnesses)