Ejemplo n.º 1
0
 // Start is called before the first frame update
 void Start()
 {
     myFlockAgent        = this.gameObject.GetComponent <FlockAgent>();
     myGeneticPathfinder = this.gameObject.GetComponent <GeneticPathfinder>();
     myChase             = this.gameObject.GetComponent <Chase>();
     vida     = GetComponent <Vida>();
     animator = GetComponent <Animator>();
     collider = GetComponent <Collider>();
     isDead   = false;
 }
    GeneticPathfinder GetFittest()
    {
        float maxFitness = float.MinValue;
        int   index      = 0;

        for (int i = 0; i < population.Count; i++)
        {
            if (population[i].fitness > maxFitness)
            {
                maxFitness = population[i].fitness;
                index      = i;
            }
        }
        GeneticPathfinder fittest = population[index];

        population.Remove(fittest);
        return(fittest);
    }
Ejemplo n.º 3
0
    GeneticPathfinder GetFittest()
    {
        float maxFitness = float.MinValue; //initiazing the maxvalue of the fitness with the minimun possible float value
        int   index      = 0;

        for (int i = 0; i < population.Count; i++) // getting the fittest and his index and removing it from the population
        {
            if (population[i].fitness > maxFitness)
            {
                maxFitness = population[i].fitness;
                index      = i;
            }
        }

        GeneticPathfinder fittest = population[index];

        population.Remove(fittest);
        return(fittest);
    }