def test_while_ga_active(): # Create the Genetic algorithm ga = GA() # Set necessary attributes ga.generation_goal = 1 # Evolve using ga.active while ga.active(): ga.evolve(5)
def test_attributes_gene_impl(): # Create the Genetic algorithm ga = GA() # Set necessary attributes ga.population_size = 3 ga.chromosome_length = 5 ga.generation_goal = 1 # Set gene_impl ga.gene_impl = lambda: random.randint(1, 10) # Evolve the genetic algorithm ga.evolve()
def test_population_size(): """Test the population size is create correctly""" for i in range(4,100): # Create the ga to test ga = GA() ga.generation_goal = 10 # Set the upper limit of testing ga.population_size = i # Evolve the ga ga.evolve() # If they are not equal throw an error assert int(len(ga.population)) == ga.population_size
def test_chromosome_length(): """ Test to see if the actual chromosome length is the same as defined.""" # Test from 0 to 100 chromosome length for i in range(1,100): # Create the ga to test ga = GA() ga.generation_goal = 10 # Set the upper limit of testing ga.chromosome_length = i # Evolve the ga ga.evolve() # If they are not equal throw an error assert len(ga.population.chromosome_list[0]) == ga.chromosome_length
def test_attributes_chromosome_impl_lambdas(): # Create the Genetic algorithm ga = GA() # Set necessary attributes ga.chromosome_length = 3 ga.generation_goal = 1 # Set gene_impl to None so it won't interfere ga.gene_impl = None # Set chromosome_impl ga.chromosome_impl = lambda: [ random.randrange(1,100), random.uniform(10,5), random.choice(["up","down"]) ] # Evolve the genetic algorithm ga.evolve()
def test_attributes_chromosome_impl_functions(): # Create the Genetic algorithm ga = GA() # Set necessary attributes ga.chromosome_length = 3 ga.generation_goal = 1 # Create chromosome_impl user function def user_chromosome_function(): chromosome_data = [ random.randrange(1,100), random.uniform(10,5), random.choice(["up","down"]) ] return chromosome_data # Set the chromosome_impl ga.chromosome_impl = user_chromosome_function # Evolve the genetic algorithm ga.evolve()